@carlonicora/nextjs-jsonapi 3.3.1 → 3.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BlockNoteEditor-JLMXCPGB.js → BlockNoteEditor-4LBUVIW6.js} +20 -20
- package/dist/{BlockNoteEditor-JLMXCPGB.js.map → BlockNoteEditor-4LBUVIW6.js.map} +1 -1
- package/dist/{BlockNoteEditor-G5A34EXN.mjs → BlockNoteEditor-CSPPZOZQ.mjs} +5 -5
- package/dist/{JsonApiRequest-2OQCZAK6.mjs → JsonApiRequest-ADNIGXTP.mjs} +2 -2
- package/dist/JsonApiRequest-WWGSGV2I.js +26 -0
- package/dist/{JsonApiRequest-6TYNBVUL.js.map → JsonApiRequest-WWGSGV2I.js.map} +1 -1
- package/dist/billing/index.js +399 -399
- package/dist/billing/index.mjs +4 -4
- package/dist/{chunk-5AKDE5UW.js → chunk-2PEPIH26.js} +941 -938
- package/dist/chunk-2PEPIH26.js.map +1 -0
- package/dist/{chunk-PGARO3JT.mjs → chunk-KW6LYVFJ.mjs} +8 -7
- package/dist/chunk-KW6LYVFJ.mjs.map +1 -0
- package/dist/{chunk-UYENG3GT.js → chunk-OHG2YWNA.js} +22 -27
- package/dist/chunk-OHG2YWNA.js.map +1 -0
- package/dist/{chunk-LCMVARSP.mjs → chunk-RUEY6XSS.mjs} +8 -13
- package/dist/chunk-RUEY6XSS.mjs.map +1 -0
- package/dist/{chunk-CMGXH5SA.mjs → chunk-RVASYIQG.mjs} +47 -3
- package/dist/chunk-RVASYIQG.mjs.map +1 -0
- package/dist/{chunk-YKFXQOQA.js → chunk-S2C5V2XZ.js} +33 -32
- package/dist/chunk-S2C5V2XZ.js.map +1 -0
- package/dist/{chunk-O4LTJAAM.mjs → chunk-SVCOFVQF.mjs} +15 -12
- package/dist/chunk-SVCOFVQF.mjs.map +1 -0
- package/dist/{chunk-PFAZPP54.js → chunk-W42MYR3Y.js} +59 -15
- package/dist/chunk-W42MYR3Y.js.map +1 -0
- package/dist/client/index.js +5 -5
- package/dist/client/index.mjs +4 -4
- package/dist/components/index.js +5 -5
- package/dist/components/index.mjs +4 -4
- package/dist/contexts/index.js +5 -5
- package/dist/contexts/index.mjs +4 -4
- package/dist/core/index.d.mts +59 -1
- package/dist/core/index.d.ts +59 -1
- package/dist/core/index.js +5 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.mjs +4 -2
- package/dist/features/help/index.js +38 -38
- package/dist/features/help/index.mjs +4 -4
- package/dist/features/tokenusage/index.js +102 -102
- package/dist/features/tokenusage/index.mjs +4 -4
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +5 -3
- package/dist/server/index.js +15 -14
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +5 -4
- package/dist/server/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/client/JsonApiClient.ts +3 -2
- package/src/client/config.ts +5 -10
- package/src/components/forms/FormPlaceAutocomplete.tsx +2 -1
- package/src/core/env.ts +73 -0
- package/src/core/index.ts +1 -0
- package/src/features/auth/utils/AuthCookies.ts +2 -1
- package/src/features/company/components/forms/CompanyEditor.tsx +2 -3
- package/src/hooks/usePushNotifications.ts +2 -1
- package/src/hooks/useSocket.ts +4 -3
- package/src/server/JsonApiServer.ts +3 -2
- package/src/unified/JsonApiRequest.ts +3 -2
- package/dist/JsonApiRequest-6TYNBVUL.js +0 -26
- package/dist/chunk-5AKDE5UW.js.map +0 -1
- package/dist/chunk-CMGXH5SA.mjs.map +0 -1
- package/dist/chunk-LCMVARSP.mjs.map +0 -1
- package/dist/chunk-O4LTJAAM.mjs.map +0 -1
- package/dist/chunk-PFAZPP54.js.map +0 -1
- package/dist/chunk-PGARO3JT.mjs.map +0 -1
- package/dist/chunk-UYENG3GT.js.map +0 -1
- package/dist/chunk-YKFXQOQA.js.map +0 -1
- /package/dist/{BlockNoteEditor-G5A34EXN.mjs.map → BlockNoteEditor-CSPPZOZQ.mjs.map} +0 -0
- /package/dist/{JsonApiRequest-2OQCZAK6.mjs.map → JsonApiRequest-ADNIGXTP.mjs.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
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, 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, 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, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.js';
|
|
1
2
|
export { A as ApiData } from './ApiData-DPKNfY-9.js';
|
|
2
3
|
import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.js';
|
|
3
4
|
export { A as ApiRequestDataTypeInterface, F as FieldSelector, G as GetterKeys, c as createJsonApiInclusion } from './ApiRequestDataTypeInterface-CYEcRUrh.js';
|
|
@@ -5,7 +6,6 @@ export { A as ApiResponseInterface } from './ApiResponseInterface-CWLvSCvS.js';
|
|
|
5
6
|
import { A as AbstractApiData } from './AbstractApiData-DtitRWPz.js';
|
|
6
7
|
import { A as AbstractService } from './AbstractService-Cew0PD0L.js';
|
|
7
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';
|
|
8
|
-
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, Chunk, ChunkInput, ChunkModule, ClientAbstractService, ClientHttpMethod, ClientNextRef, ClientPreviousRef, ClientSelfRef, ClientTotalRef, CodiceFiscaleValidationOptions, Company, CompanyFields, CompanyModule, Content, ContentModule, DataClass, DataClass as DataClassRegistry, DiffBlock, DiffResult, EndpointCreator, EndpointQuery, EntityAiStatus, EntityObject, Feature, FeatureModule, FormatOption, FoundationModuleDefinitions, 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, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.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-0zyVingf.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';
|
package/dist/index.js
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
var
|
|
21
|
+
var _chunkOHG2YWNAjs = require('./chunk-OHG2YWNA.js');
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
@@ -225,7 +225,7 @@ var _chunkUYENG3GTjs = require('./chunk-UYENG3GT.js');
|
|
|
225
225
|
|
|
226
226
|
|
|
227
227
|
|
|
228
|
-
var
|
|
228
|
+
var _chunkS2C5V2XZjs = require('./chunk-S2C5V2XZ.js');
|
|
229
229
|
require('./chunk-LXKSUWAV.js');
|
|
230
230
|
require('./chunk-IBS6NI7D.js');
|
|
231
231
|
|
|
@@ -238,7 +238,8 @@ require('./chunk-IBS6NI7D.js');
|
|
|
238
238
|
|
|
239
239
|
|
|
240
240
|
|
|
241
|
-
|
|
241
|
+
|
|
242
|
+
var _chunkW42MYR3Yjs = require('./chunk-W42MYR3Y.js');
|
|
242
243
|
require('./chunk-7QVYU63E.js');
|
|
243
244
|
|
|
244
245
|
|
|
@@ -475,5 +476,6 @@ require('./chunk-7QVYU63E.js');
|
|
|
475
476
|
|
|
476
477
|
|
|
477
478
|
|
|
478
|
-
exports.ACTION_TYPES = _chunkUYENG3GTjs.ACTION_TYPES; exports.AVAILABLE_OAUTH_SCOPES = _chunkYKFXQOQAjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunkYKFXQOQAjs.AbstractApiData; exports.AbstractService = _chunkYKFXQOQAjs.AbstractService; exports.Action = _chunkYKFXQOQAjs.Action; exports.AiConnection = _chunkYKFXQOQAjs.AiConnection; exports.AiConnectionFields = _chunkYKFXQOQAjs.AiConnectionFields; exports.AiConnectionModule = _chunkYKFXQOQAjs.AiConnectionModule; exports.AiConnectionService = _chunkYKFXQOQAjs.AiConnectionService; exports.Assistant = _chunkYKFXQOQAjs.Assistant; exports.AssistantAction = _chunkYKFXQOQAjs.AssistantAction; exports.AssistantActionModule = _chunkYKFXQOQAjs.AssistantActionModule; exports.AssistantActionService = _chunkYKFXQOQAjs.AssistantActionService; exports.AssistantMessage = _chunkYKFXQOQAjs.AssistantMessage; exports.AssistantMessageModule = _chunkYKFXQOQAjs.AssistantMessageModule; exports.AssistantMessageService = _chunkYKFXQOQAjs.AssistantMessageService; exports.AssistantModule = _chunkYKFXQOQAjs.AssistantModule; exports.AssistantService = _chunkYKFXQOQAjs.AssistantService; exports.AuditLog = _chunkYKFXQOQAjs.AuditLog; exports.AuditLogModule = _chunkYKFXQOQAjs.AuditLogModule; exports.AuditLogService = _chunkYKFXQOQAjs.AuditLogService; exports.Auth = _chunkYKFXQOQAjs.Auth; exports.AuthComponent = _chunkYKFXQOQAjs.AuthComponent; exports.AuthModule = _chunkYKFXQOQAjs.AuthModule; exports.AuthService = _chunkYKFXQOQAjs.AuthService; exports.AuthorModule = _chunkYKFXQOQAjs.AuthorModule; exports.BackupCodeVerify = _chunkYKFXQOQAjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunkYKFXQOQAjs.BackupCodeVerifyModule; exports.Billing = _chunkYKFXQOQAjs.Billing; exports.BillingModule = _chunkYKFXQOQAjs.BillingModule; exports.BillingService = _chunkYKFXQOQAjs.BillingService; exports.BlockNoteDiffUtil = _chunkYKFXQOQAjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunkYKFXQOQAjs.BlockNoteWordDiffRendererUtil; exports.COMPANY_ADMINISTRATOR_ROLE_ID = _chunkUYENG3GTjs.COMPANY_ADMINISTRATOR_ROLE_ID; exports.Chunk = _chunkYKFXQOQAjs.Chunk; exports.ChunkModule = _chunkYKFXQOQAjs.ChunkModule; exports.ClientAbstractService = _chunkYKFXQOQAjs.ClientAbstractService; exports.ClientHttpMethod = _chunkYKFXQOQAjs.ClientHttpMethod; exports.Company = _chunkYKFXQOQAjs.Company; exports.CompanyFields = _chunkYKFXQOQAjs.CompanyFields; exports.CompanyModule = _chunkYKFXQOQAjs.CompanyModule; exports.CompanyService = _chunkYKFXQOQAjs.CompanyService; exports.Content = _chunkYKFXQOQAjs.Content; exports.ContentFields = _chunkYKFXQOQAjs.ContentFields; exports.ContentModule = _chunkYKFXQOQAjs.ContentModule; exports.ContentService = _chunkYKFXQOQAjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunkYKFXQOQAjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkPFAZPP54js.DataClassRegistry; exports.DataClassRegistry = _chunkPFAZPP54js.DataClassRegistry; exports.EndpointCreator = _chunkYKFXQOQAjs.EndpointCreator; exports.EntityAiStatus = _chunkYKFXQOQAjs.EntityAiStatus; exports.Feature = _chunkYKFXQOQAjs.Feature; exports.FeatureModule = _chunkYKFXQOQAjs.FeatureModule; exports.FeatureService = _chunkYKFXQOQAjs.FeatureService; exports.HowTo = _chunkYKFXQOQAjs.HowTo; exports.HowToFields = _chunkYKFXQOQAjs.HowToFields; exports.HowToModule = _chunkYKFXQOQAjs.HowToModule; exports.HowToService = _chunkYKFXQOQAjs.HowToService; exports.HttpMethod = _chunkYKFXQOQAjs.HttpMethod; exports.InvoiceStatus = _chunkYKFXQOQAjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkPFAZPP54js.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunkYKFXQOQAjs.MOBILE_BREAKPOINT; exports.Module = _chunkYKFXQOQAjs.Module; exports.ModuleModule = _chunkYKFXQOQAjs.ModuleModule; exports.ModulePaths = _chunkYKFXQOQAjs.ModulePaths; exports.ModulePathsModule = _chunkYKFXQOQAjs.ModulePathsModule; exports.ModuleRegistrar = _chunkYKFXQOQAjs.ModuleRegistrar; exports.ModuleRegistry = _chunkYKFXQOQAjs.ModuleRegistry; exports.Modules = _chunkYKFXQOQAjs.Modules; exports.Notification = _chunkYKFXQOQAjs.Notification; exports.NotificationFields = _chunkYKFXQOQAjs.NotificationFields; exports.NotificationModule = _chunkYKFXQOQAjs.NotificationModule; exports.NotificationService = _chunkYKFXQOQAjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunkYKFXQOQAjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunkYKFXQOQAjs.OAuthClient; exports.OAuthModule = _chunkYKFXQOQAjs.OAuthModule; exports.OAuthService = _chunkYKFXQOQAjs.OAuthService; exports.Passkey = _chunkYKFXQOQAjs.Passkey; exports.PasskeyAuthenticationOptions = _chunkYKFXQOQAjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunkYKFXQOQAjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunkYKFXQOQAjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunkYKFXQOQAjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunkYKFXQOQAjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunkYKFXQOQAjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunkYKFXQOQAjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunkYKFXQOQAjs.PasskeyRename; exports.PasskeyRenameModule = _chunkYKFXQOQAjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunkYKFXQOQAjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunkYKFXQOQAjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunkYKFXQOQAjs.PaymentMethod; exports.PermissionMapping = _chunkYKFXQOQAjs.PermissionMapping; exports.PermissionMappingModule = _chunkYKFXQOQAjs.PermissionMappingModule; exports.Push = _chunkYKFXQOQAjs.Push; exports.PushModule = _chunkYKFXQOQAjs.PushModule; exports.PushService = _chunkYKFXQOQAjs.PushService; exports.RbacMatrixModel = _chunkYKFXQOQAjs.RbacMatrixModel; exports.RbacMatrixModule = _chunkYKFXQOQAjs.RbacMatrixModule; exports.RbacService = _chunkUYENG3GTjs.RbacService; exports.ReferralModule = _chunkYKFXQOQAjs.ReferralModule; exports.ReferralService = _chunkYKFXQOQAjs.ReferralService; exports.ReferralStats = _chunkYKFXQOQAjs.ReferralStats; exports.ReferralStatsModule = _chunkYKFXQOQAjs.ReferralStatsModule; exports.RehydrationFactory = _chunkYKFXQOQAjs.RehydrationFactory; exports.Role = _chunkYKFXQOQAjs.Role; exports.RoleFields = _chunkYKFXQOQAjs.RoleFields; exports.RoleModule = _chunkYKFXQOQAjs.RoleModule; exports.RoleService = _chunkYKFXQOQAjs.RoleService; exports.S3 = _chunkYKFXQOQAjs.S3; exports.S3Module = _chunkYKFXQOQAjs.S3Module; exports.S3Service = _chunkYKFXQOQAjs.S3Service; exports.StripeCustomer = _chunkYKFXQOQAjs.StripeCustomer; exports.StripeCustomerModule = _chunkYKFXQOQAjs.StripeCustomerModule; exports.StripeCustomerService = _chunkYKFXQOQAjs.StripeCustomerService; exports.StripeInvoice = _chunkYKFXQOQAjs.StripeInvoice; exports.StripeInvoiceModule = _chunkYKFXQOQAjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunkYKFXQOQAjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunkYKFXQOQAjs.StripePaymentMethodModule; exports.StripePrice = _chunkYKFXQOQAjs.StripePrice; exports.StripePriceFields = _chunkYKFXQOQAjs.StripePriceFields; exports.StripePriceModule = _chunkYKFXQOQAjs.StripePriceModule; exports.StripePriceService = _chunkYKFXQOQAjs.StripePriceService; exports.StripeProduct = _chunkYKFXQOQAjs.StripeProduct; exports.StripeProductFields = _chunkYKFXQOQAjs.StripeProductFields; exports.StripeProductModule = _chunkYKFXQOQAjs.StripeProductModule; exports.StripeProductService = _chunkYKFXQOQAjs.StripeProductService; exports.StripePromotionCode = _chunkYKFXQOQAjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunkYKFXQOQAjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunkYKFXQOQAjs.StripePromotionCodeService; exports.StripeSubscription = _chunkYKFXQOQAjs.StripeSubscription; exports.StripeSubscriptionModule = _chunkYKFXQOQAjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunkYKFXQOQAjs.StripeSubscriptionService; exports.StripeUsage = _chunkYKFXQOQAjs.StripeUsage; exports.StripeUsageModule = _chunkYKFXQOQAjs.StripeUsageModule; exports.StripeUsageService = _chunkYKFXQOQAjs.StripeUsageService; exports.SubscriptionStatus = _chunkYKFXQOQAjs.SubscriptionStatus; exports.TableOptions = _chunkYKFXQOQAjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunkYKFXQOQAjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunkYKFXQOQAjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunkYKFXQOQAjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunkYKFXQOQAjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunkYKFXQOQAjs.TotpAuthenticatorModule; exports.TotpSetup = _chunkYKFXQOQAjs.TotpSetup; exports.TotpSetupModule = _chunkYKFXQOQAjs.TotpSetupModule; exports.TotpVerify = _chunkYKFXQOQAjs.TotpVerify; exports.TotpVerifyLogin = _chunkYKFXQOQAjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunkYKFXQOQAjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunkYKFXQOQAjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunkYKFXQOQAjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunkYKFXQOQAjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunkYKFXQOQAjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunkYKFXQOQAjs.TwoFactorEnableModule; exports.TwoFactorService = _chunkYKFXQOQAjs.TwoFactorService; exports.TwoFactorStatus = _chunkYKFXQOQAjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunkYKFXQOQAjs.TwoFactorStatusModule; exports.User = _chunkYKFXQOQAjs.User; exports.UserFields = _chunkYKFXQOQAjs.UserFields; exports.UserModule = _chunkYKFXQOQAjs.UserModule; exports.UserService = _chunkYKFXQOQAjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunkYKFXQOQAjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunkYKFXQOQAjs.Waitlist; exports.WaitlistModule = _chunkYKFXQOQAjs.WaitlistModule; exports.WaitlistService = _chunkYKFXQOQAjs.WaitlistService; exports.WaitlistStats = _chunkYKFXQOQAjs.WaitlistStats; exports.WaitlistStatsModule = _chunkYKFXQOQAjs.WaitlistStatsModule; exports.checkPermissions = _chunkYKFXQOQAjs.checkPermissions; exports.checkPermissionsFromServer = _chunkYKFXQOQAjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunkYKFXQOQAjs.clearLastApiMeta; exports.clearLastApiTotal = _chunkYKFXQOQAjs.clearLastApiTotal; exports.cn = _chunkYKFXQOQAjs.cn; exports.composeRefs = _chunkYKFXQOQAjs.composeRefs; exports.configureAuth = _chunkYKFXQOQAjs.configureAuth; exports.configureI18n = _chunkUYENG3GTjs.configureI18n; exports.configureJsonApi = _chunkUYENG3GTjs.configureJsonApi; exports.configureLogin = _chunkUYENG3GTjs.configureLogin; exports.configureReferral = _chunkUYENG3GTjs.configureReferral; exports.configureRoles = _chunkUYENG3GTjs.configureRoles; exports.configureTokenUsage = _chunkYKFXQOQAjs.configureTokenUsage; exports.configureWaitlist = _chunkUYENG3GTjs.configureWaitlist; exports.createJsonApiInclusion = _chunkYKFXQOQAjs.createJsonApiInclusion; exports.dismissToast = _chunkYKFXQOQAjs.dismissToast; exports.entityObjectSchema = _chunkYKFXQOQAjs.entityObjectSchema; exports.exists = _chunkYKFXQOQAjs.exists; exports.formatCodiceFiscale = _chunkYKFXQOQAjs.formatCodiceFiscale; exports.formatDate = _chunkYKFXQOQAjs.formatDate; exports.formatLocalDate = _chunkYKFXQOQAjs.formatLocalDate; exports.formatPartitaIva = _chunkYKFXQOQAjs.formatPartitaIva; exports.getApiUrl = _chunkUYENG3GTjs.getApiUrl; exports.getAppUrl = _chunkUYENG3GTjs.getAppUrl; exports.getBootstrapper = _chunkPFAZPP54js.getBootstrapper; exports.getClientGlobalErrorHandler = _chunkYKFXQOQAjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunkYKFXQOQAjs.getGlobalErrorHandler; exports.getIcon = _chunkYKFXQOQAjs.getIcon; exports.getIconByModule = _chunkYKFXQOQAjs.getIconByModule; exports.getIconByModuleName = _chunkYKFXQOQAjs.getIconByModuleName; exports.getInitials = _chunkYKFXQOQAjs.getInitials; exports.getLastApiMeta = _chunkYKFXQOQAjs.getLastApiMeta; exports.getLastApiTotal = _chunkYKFXQOQAjs.getLastApiTotal; exports.getLucideIcon = _chunkYKFXQOQAjs.getLucideIcon; exports.getLucideIconByModule = _chunkYKFXQOQAjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunkYKFXQOQAjs.getLucideIconByModuleName; exports.getPublicApiUrl = _chunkUYENG3GTjs.getPublicApiUrl; exports.getReferralConfig = _chunkUYENG3GTjs.getReferralConfig; exports.getRoleId = _chunkUYENG3GTjs.getRoleId; exports.getStripePublishableKey = _chunkUYENG3GTjs.getStripePublishableKey; exports.getTableComponents = _chunkYKFXQOQAjs.getTableComponents; exports.getTableOptions = _chunkYKFXQOQAjs.getTableOptions; exports.getTokenHandler = _chunkYKFXQOQAjs.getTokenHandler; exports.getTokenUsageCurrency = _chunkYKFXQOQAjs.getTokenUsageCurrency; exports.getTrackablePages = _chunkUYENG3GTjs.getTrackablePages; exports.getValueFromPath = _chunkYKFXQOQAjs.getValueFromPath; exports.getWaitlistConfig = _chunkUYENG3GTjs.getWaitlistConfig; exports.hasBootstrapper = _chunkPFAZPP54js.hasBootstrapper; exports.isReferralEnabled = _chunkUYENG3GTjs.isReferralEnabled; exports.isRemoteImageSrc = _chunkYKFXQOQAjs.isRemoteImageSrc; exports.isRolesConfigured = _chunkUYENG3GTjs.isRolesConfigured; exports.rehydrate = _chunkYKFXQOQAjs.rehydrate; exports.rehydrateList = _chunkYKFXQOQAjs.rehydrateList; exports.resetBootstrapStore = _chunkPFAZPP54js.resetBootstrapStore; exports.setBootstrapper = _chunkPFAZPP54js.setBootstrapper; exports.setClientGlobalErrorHandler = _chunkYKFXQOQAjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunkYKFXQOQAjs.setGlobalErrorHandler; exports.showCustomToast = _chunkYKFXQOQAjs.showCustomToast; exports.showError = _chunkYKFXQOQAjs.showError; exports.showToast = _chunkYKFXQOQAjs.showToast; exports.tokenUsageModules = _chunkYKFXQOQAjs.tokenUsageModules; exports.translateData = _chunkPFAZPP54js.translateData; exports.translateResponse = _chunkPFAZPP54js.translateResponse; exports.tryBootstrap = _chunkPFAZPP54js.tryBootstrap; exports.useComposedRefs = _chunkYKFXQOQAjs.useComposedRefs; exports.useIsMobile = _chunkYKFXQOQAjs.useIsMobile; exports.userObjectSchema = _chunkYKFXQOQAjs.userObjectSchema; exports.validateCodiceFiscale = _chunkYKFXQOQAjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunkYKFXQOQAjs.validateItalianTaxCode; exports.validatePartitaIva = _chunkYKFXQOQAjs.validatePartitaIva;
|
|
479
|
+
|
|
480
|
+
exports.ACTION_TYPES = _chunkOHG2YWNAjs.ACTION_TYPES; exports.AVAILABLE_OAUTH_SCOPES = _chunkS2C5V2XZjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunkS2C5V2XZjs.AbstractApiData; exports.AbstractService = _chunkS2C5V2XZjs.AbstractService; exports.Action = _chunkS2C5V2XZjs.Action; exports.AiConnection = _chunkS2C5V2XZjs.AiConnection; exports.AiConnectionFields = _chunkS2C5V2XZjs.AiConnectionFields; exports.AiConnectionModule = _chunkS2C5V2XZjs.AiConnectionModule; exports.AiConnectionService = _chunkS2C5V2XZjs.AiConnectionService; exports.Assistant = _chunkS2C5V2XZjs.Assistant; exports.AssistantAction = _chunkS2C5V2XZjs.AssistantAction; exports.AssistantActionModule = _chunkS2C5V2XZjs.AssistantActionModule; exports.AssistantActionService = _chunkS2C5V2XZjs.AssistantActionService; exports.AssistantMessage = _chunkS2C5V2XZjs.AssistantMessage; exports.AssistantMessageModule = _chunkS2C5V2XZjs.AssistantMessageModule; exports.AssistantMessageService = _chunkS2C5V2XZjs.AssistantMessageService; exports.AssistantModule = _chunkS2C5V2XZjs.AssistantModule; exports.AssistantService = _chunkS2C5V2XZjs.AssistantService; exports.AuditLog = _chunkS2C5V2XZjs.AuditLog; exports.AuditLogModule = _chunkS2C5V2XZjs.AuditLogModule; exports.AuditLogService = _chunkS2C5V2XZjs.AuditLogService; exports.Auth = _chunkS2C5V2XZjs.Auth; exports.AuthComponent = _chunkS2C5V2XZjs.AuthComponent; exports.AuthModule = _chunkS2C5V2XZjs.AuthModule; exports.AuthService = _chunkS2C5V2XZjs.AuthService; exports.AuthorModule = _chunkS2C5V2XZjs.AuthorModule; exports.BackupCodeVerify = _chunkS2C5V2XZjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunkS2C5V2XZjs.BackupCodeVerifyModule; exports.Billing = _chunkS2C5V2XZjs.Billing; exports.BillingModule = _chunkS2C5V2XZjs.BillingModule; exports.BillingService = _chunkS2C5V2XZjs.BillingService; exports.BlockNoteDiffUtil = _chunkS2C5V2XZjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunkS2C5V2XZjs.BlockNoteWordDiffRendererUtil; exports.COMPANY_ADMINISTRATOR_ROLE_ID = _chunkOHG2YWNAjs.COMPANY_ADMINISTRATOR_ROLE_ID; exports.Chunk = _chunkS2C5V2XZjs.Chunk; exports.ChunkModule = _chunkS2C5V2XZjs.ChunkModule; exports.ClientAbstractService = _chunkS2C5V2XZjs.ClientAbstractService; exports.ClientHttpMethod = _chunkS2C5V2XZjs.ClientHttpMethod; exports.Company = _chunkS2C5V2XZjs.Company; exports.CompanyFields = _chunkS2C5V2XZjs.CompanyFields; exports.CompanyModule = _chunkS2C5V2XZjs.CompanyModule; exports.CompanyService = _chunkS2C5V2XZjs.CompanyService; exports.Content = _chunkS2C5V2XZjs.Content; exports.ContentFields = _chunkS2C5V2XZjs.ContentFields; exports.ContentModule = _chunkS2C5V2XZjs.ContentModule; exports.ContentService = _chunkS2C5V2XZjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunkS2C5V2XZjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkW42MYR3Yjs.DataClassRegistry; exports.DataClassRegistry = _chunkW42MYR3Yjs.DataClassRegistry; exports.ENV = _chunkW42MYR3Yjs.ENV; exports.EndpointCreator = _chunkS2C5V2XZjs.EndpointCreator; exports.EntityAiStatus = _chunkS2C5V2XZjs.EntityAiStatus; exports.Feature = _chunkS2C5V2XZjs.Feature; exports.FeatureModule = _chunkS2C5V2XZjs.FeatureModule; exports.FeatureService = _chunkS2C5V2XZjs.FeatureService; exports.HowTo = _chunkS2C5V2XZjs.HowTo; exports.HowToFields = _chunkS2C5V2XZjs.HowToFields; exports.HowToModule = _chunkS2C5V2XZjs.HowToModule; exports.HowToService = _chunkS2C5V2XZjs.HowToService; exports.HttpMethod = _chunkS2C5V2XZjs.HttpMethod; exports.InvoiceStatus = _chunkS2C5V2XZjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkW42MYR3Yjs.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunkS2C5V2XZjs.MOBILE_BREAKPOINT; exports.Module = _chunkS2C5V2XZjs.Module; exports.ModuleModule = _chunkS2C5V2XZjs.ModuleModule; exports.ModulePaths = _chunkS2C5V2XZjs.ModulePaths; exports.ModulePathsModule = _chunkS2C5V2XZjs.ModulePathsModule; exports.ModuleRegistrar = _chunkS2C5V2XZjs.ModuleRegistrar; exports.ModuleRegistry = _chunkS2C5V2XZjs.ModuleRegistry; exports.Modules = _chunkS2C5V2XZjs.Modules; exports.Notification = _chunkS2C5V2XZjs.Notification; exports.NotificationFields = _chunkS2C5V2XZjs.NotificationFields; exports.NotificationModule = _chunkS2C5V2XZjs.NotificationModule; exports.NotificationService = _chunkS2C5V2XZjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunkS2C5V2XZjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunkS2C5V2XZjs.OAuthClient; exports.OAuthModule = _chunkS2C5V2XZjs.OAuthModule; exports.OAuthService = _chunkS2C5V2XZjs.OAuthService; exports.Passkey = _chunkS2C5V2XZjs.Passkey; exports.PasskeyAuthenticationOptions = _chunkS2C5V2XZjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunkS2C5V2XZjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunkS2C5V2XZjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunkS2C5V2XZjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunkS2C5V2XZjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunkS2C5V2XZjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunkS2C5V2XZjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunkS2C5V2XZjs.PasskeyRename; exports.PasskeyRenameModule = _chunkS2C5V2XZjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunkS2C5V2XZjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunkS2C5V2XZjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunkS2C5V2XZjs.PaymentMethod; exports.PermissionMapping = _chunkS2C5V2XZjs.PermissionMapping; exports.PermissionMappingModule = _chunkS2C5V2XZjs.PermissionMappingModule; exports.Push = _chunkS2C5V2XZjs.Push; exports.PushModule = _chunkS2C5V2XZjs.PushModule; exports.PushService = _chunkS2C5V2XZjs.PushService; exports.RbacMatrixModel = _chunkS2C5V2XZjs.RbacMatrixModel; exports.RbacMatrixModule = _chunkS2C5V2XZjs.RbacMatrixModule; exports.RbacService = _chunkOHG2YWNAjs.RbacService; exports.ReferralModule = _chunkS2C5V2XZjs.ReferralModule; exports.ReferralService = _chunkS2C5V2XZjs.ReferralService; exports.ReferralStats = _chunkS2C5V2XZjs.ReferralStats; exports.ReferralStatsModule = _chunkS2C5V2XZjs.ReferralStatsModule; exports.RehydrationFactory = _chunkS2C5V2XZjs.RehydrationFactory; exports.Role = _chunkS2C5V2XZjs.Role; exports.RoleFields = _chunkS2C5V2XZjs.RoleFields; exports.RoleModule = _chunkS2C5V2XZjs.RoleModule; exports.RoleService = _chunkS2C5V2XZjs.RoleService; exports.S3 = _chunkS2C5V2XZjs.S3; exports.S3Module = _chunkS2C5V2XZjs.S3Module; exports.S3Service = _chunkS2C5V2XZjs.S3Service; exports.StripeCustomer = _chunkS2C5V2XZjs.StripeCustomer; exports.StripeCustomerModule = _chunkS2C5V2XZjs.StripeCustomerModule; exports.StripeCustomerService = _chunkS2C5V2XZjs.StripeCustomerService; exports.StripeInvoice = _chunkS2C5V2XZjs.StripeInvoice; exports.StripeInvoiceModule = _chunkS2C5V2XZjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunkS2C5V2XZjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunkS2C5V2XZjs.StripePaymentMethodModule; exports.StripePrice = _chunkS2C5V2XZjs.StripePrice; exports.StripePriceFields = _chunkS2C5V2XZjs.StripePriceFields; exports.StripePriceModule = _chunkS2C5V2XZjs.StripePriceModule; exports.StripePriceService = _chunkS2C5V2XZjs.StripePriceService; exports.StripeProduct = _chunkS2C5V2XZjs.StripeProduct; exports.StripeProductFields = _chunkS2C5V2XZjs.StripeProductFields; exports.StripeProductModule = _chunkS2C5V2XZjs.StripeProductModule; exports.StripeProductService = _chunkS2C5V2XZjs.StripeProductService; exports.StripePromotionCode = _chunkS2C5V2XZjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunkS2C5V2XZjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunkS2C5V2XZjs.StripePromotionCodeService; exports.StripeSubscription = _chunkS2C5V2XZjs.StripeSubscription; exports.StripeSubscriptionModule = _chunkS2C5V2XZjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunkS2C5V2XZjs.StripeSubscriptionService; exports.StripeUsage = _chunkS2C5V2XZjs.StripeUsage; exports.StripeUsageModule = _chunkS2C5V2XZjs.StripeUsageModule; exports.StripeUsageService = _chunkS2C5V2XZjs.StripeUsageService; exports.SubscriptionStatus = _chunkS2C5V2XZjs.SubscriptionStatus; exports.TableOptions = _chunkS2C5V2XZjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunkS2C5V2XZjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunkS2C5V2XZjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunkS2C5V2XZjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunkS2C5V2XZjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunkS2C5V2XZjs.TotpAuthenticatorModule; exports.TotpSetup = _chunkS2C5V2XZjs.TotpSetup; exports.TotpSetupModule = _chunkS2C5V2XZjs.TotpSetupModule; exports.TotpVerify = _chunkS2C5V2XZjs.TotpVerify; exports.TotpVerifyLogin = _chunkS2C5V2XZjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunkS2C5V2XZjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunkS2C5V2XZjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunkS2C5V2XZjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunkS2C5V2XZjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunkS2C5V2XZjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunkS2C5V2XZjs.TwoFactorEnableModule; exports.TwoFactorService = _chunkS2C5V2XZjs.TwoFactorService; exports.TwoFactorStatus = _chunkS2C5V2XZjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunkS2C5V2XZjs.TwoFactorStatusModule; exports.User = _chunkS2C5V2XZjs.User; exports.UserFields = _chunkS2C5V2XZjs.UserFields; exports.UserModule = _chunkS2C5V2XZjs.UserModule; exports.UserService = _chunkS2C5V2XZjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunkS2C5V2XZjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunkS2C5V2XZjs.Waitlist; exports.WaitlistModule = _chunkS2C5V2XZjs.WaitlistModule; exports.WaitlistService = _chunkS2C5V2XZjs.WaitlistService; exports.WaitlistStats = _chunkS2C5V2XZjs.WaitlistStats; exports.WaitlistStatsModule = _chunkS2C5V2XZjs.WaitlistStatsModule; exports.checkPermissions = _chunkS2C5V2XZjs.checkPermissions; exports.checkPermissionsFromServer = _chunkS2C5V2XZjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunkS2C5V2XZjs.clearLastApiMeta; exports.clearLastApiTotal = _chunkS2C5V2XZjs.clearLastApiTotal; exports.cn = _chunkS2C5V2XZjs.cn; exports.composeRefs = _chunkS2C5V2XZjs.composeRefs; exports.configureAuth = _chunkS2C5V2XZjs.configureAuth; exports.configureI18n = _chunkOHG2YWNAjs.configureI18n; exports.configureJsonApi = _chunkOHG2YWNAjs.configureJsonApi; exports.configureLogin = _chunkOHG2YWNAjs.configureLogin; exports.configureReferral = _chunkOHG2YWNAjs.configureReferral; exports.configureRoles = _chunkOHG2YWNAjs.configureRoles; exports.configureTokenUsage = _chunkS2C5V2XZjs.configureTokenUsage; exports.configureWaitlist = _chunkOHG2YWNAjs.configureWaitlist; exports.createJsonApiInclusion = _chunkS2C5V2XZjs.createJsonApiInclusion; exports.dismissToast = _chunkS2C5V2XZjs.dismissToast; exports.entityObjectSchema = _chunkS2C5V2XZjs.entityObjectSchema; exports.exists = _chunkS2C5V2XZjs.exists; exports.formatCodiceFiscale = _chunkS2C5V2XZjs.formatCodiceFiscale; exports.formatDate = _chunkS2C5V2XZjs.formatDate; exports.formatLocalDate = _chunkS2C5V2XZjs.formatLocalDate; exports.formatPartitaIva = _chunkS2C5V2XZjs.formatPartitaIva; exports.getApiUrl = _chunkOHG2YWNAjs.getApiUrl; exports.getAppUrl = _chunkOHG2YWNAjs.getAppUrl; exports.getBootstrapper = _chunkW42MYR3Yjs.getBootstrapper; exports.getClientGlobalErrorHandler = _chunkS2C5V2XZjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunkS2C5V2XZjs.getGlobalErrorHandler; exports.getIcon = _chunkS2C5V2XZjs.getIcon; exports.getIconByModule = _chunkS2C5V2XZjs.getIconByModule; exports.getIconByModuleName = _chunkS2C5V2XZjs.getIconByModuleName; exports.getInitials = _chunkS2C5V2XZjs.getInitials; exports.getLastApiMeta = _chunkS2C5V2XZjs.getLastApiMeta; exports.getLastApiTotal = _chunkS2C5V2XZjs.getLastApiTotal; exports.getLucideIcon = _chunkS2C5V2XZjs.getLucideIcon; exports.getLucideIconByModule = _chunkS2C5V2XZjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunkS2C5V2XZjs.getLucideIconByModuleName; exports.getPublicApiUrl = _chunkOHG2YWNAjs.getPublicApiUrl; exports.getReferralConfig = _chunkOHG2YWNAjs.getReferralConfig; exports.getRoleId = _chunkOHG2YWNAjs.getRoleId; exports.getStripePublishableKey = _chunkOHG2YWNAjs.getStripePublishableKey; exports.getTableComponents = _chunkS2C5V2XZjs.getTableComponents; exports.getTableOptions = _chunkS2C5V2XZjs.getTableOptions; exports.getTokenHandler = _chunkS2C5V2XZjs.getTokenHandler; exports.getTokenUsageCurrency = _chunkS2C5V2XZjs.getTokenUsageCurrency; exports.getTrackablePages = _chunkOHG2YWNAjs.getTrackablePages; exports.getValueFromPath = _chunkS2C5V2XZjs.getValueFromPath; exports.getWaitlistConfig = _chunkOHG2YWNAjs.getWaitlistConfig; exports.hasBootstrapper = _chunkW42MYR3Yjs.hasBootstrapper; exports.isReferralEnabled = _chunkOHG2YWNAjs.isReferralEnabled; exports.isRemoteImageSrc = _chunkS2C5V2XZjs.isRemoteImageSrc; exports.isRolesConfigured = _chunkOHG2YWNAjs.isRolesConfigured; exports.rehydrate = _chunkS2C5V2XZjs.rehydrate; exports.rehydrateList = _chunkS2C5V2XZjs.rehydrateList; exports.resetBootstrapStore = _chunkW42MYR3Yjs.resetBootstrapStore; exports.setBootstrapper = _chunkW42MYR3Yjs.setBootstrapper; exports.setClientGlobalErrorHandler = _chunkS2C5V2XZjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunkS2C5V2XZjs.setGlobalErrorHandler; exports.showCustomToast = _chunkS2C5V2XZjs.showCustomToast; exports.showError = _chunkS2C5V2XZjs.showError; exports.showToast = _chunkS2C5V2XZjs.showToast; exports.tokenUsageModules = _chunkS2C5V2XZjs.tokenUsageModules; exports.translateData = _chunkW42MYR3Yjs.translateData; exports.translateResponse = _chunkW42MYR3Yjs.translateResponse; exports.tryBootstrap = _chunkW42MYR3Yjs.tryBootstrap; exports.useComposedRefs = _chunkS2C5V2XZjs.useComposedRefs; exports.useIsMobile = _chunkS2C5V2XZjs.useIsMobile; exports.userObjectSchema = _chunkS2C5V2XZjs.userObjectSchema; exports.validateCodiceFiscale = _chunkS2C5V2XZjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunkS2C5V2XZjs.validateItalianTaxCode; exports.validatePartitaIva = _chunkS2C5V2XZjs.validatePartitaIva;
|
|
479
481
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/index.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/index.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,2hcAAC","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/index.js"}
|
package/dist/index.mjs
CHANGED
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
getWaitlistConfig,
|
|
19
19
|
isReferralEnabled,
|
|
20
20
|
isRolesConfigured
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-RUEY6XSS.mjs";
|
|
22
22
|
import {
|
|
23
23
|
AVAILABLE_OAUTH_SCOPES,
|
|
24
24
|
AbstractApiData,
|
|
@@ -225,11 +225,12 @@ import {
|
|
|
225
225
|
validateCodiceFiscale,
|
|
226
226
|
validateItalianTaxCode,
|
|
227
227
|
validatePartitaIva
|
|
228
|
-
} from "./chunk-
|
|
228
|
+
} from "./chunk-KW6LYVFJ.mjs";
|
|
229
229
|
import "./chunk-AUXK7QSA.mjs";
|
|
230
230
|
import "./chunk-C7C7VY4F.mjs";
|
|
231
231
|
import {
|
|
232
232
|
DataClassRegistry,
|
|
233
|
+
ENV,
|
|
233
234
|
JsonApiDataFactory,
|
|
234
235
|
getBootstrapper,
|
|
235
236
|
hasBootstrapper,
|
|
@@ -238,7 +239,7 @@ import {
|
|
|
238
239
|
translateData,
|
|
239
240
|
translateResponse,
|
|
240
241
|
tryBootstrap
|
|
241
|
-
} from "./chunk-
|
|
242
|
+
} from "./chunk-RVASYIQG.mjs";
|
|
242
243
|
import "./chunk-PAWJFY3S.mjs";
|
|
243
244
|
export {
|
|
244
245
|
ACTION_TYPES,
|
|
@@ -290,6 +291,7 @@ export {
|
|
|
290
291
|
DEFAULT_GRANT_TYPES,
|
|
291
292
|
DataClassRegistry as DataClass,
|
|
292
293
|
DataClassRegistry,
|
|
294
|
+
ENV,
|
|
293
295
|
EndpointCreator,
|
|
294
296
|
EntityAiStatus,
|
|
295
297
|
Feature,
|
package/dist/server/index.js
CHANGED
|
@@ -15,13 +15,14 @@ var _chunkIOLU4ASDjs = require('../chunk-IOLU4ASD.js');
|
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _chunkS2C5V2XZjs = require('../chunk-S2C5V2XZ.js');
|
|
19
19
|
require('../chunk-LXKSUWAV.js');
|
|
20
20
|
require('../chunk-IBS6NI7D.js');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
|
|
25
|
+
var _chunkW42MYR3Yjs = require('../chunk-W42MYR3Y.js');
|
|
25
26
|
|
|
26
27
|
|
|
27
28
|
var _chunk7QVYU63Ejs = require('../chunk-7QVYU63E.js');
|
|
@@ -86,7 +87,7 @@ var ServerSession = class {
|
|
|
86
87
|
if (!rawModules) return false;
|
|
87
88
|
const modules = JSON.parse(_pako.ungzip.call(void 0, Buffer.from(rawModules, "base64"), { toText: true }));
|
|
88
89
|
const selectedModule = modules.find((module) => module.id === params.module.moduleId);
|
|
89
|
-
return
|
|
90
|
+
return _chunkS2C5V2XZjs.checkPermissionsFromServer.call(void 0, {
|
|
90
91
|
module: params.module,
|
|
91
92
|
action: params.action,
|
|
92
93
|
data: params.data,
|
|
@@ -109,7 +110,7 @@ function getServerApiUrl() {
|
|
|
109
110
|
if (_optionalChain([_serverConfig, 'optionalAccess', _19 => _19.apiUrl])) {
|
|
110
111
|
return _serverConfig.apiUrl;
|
|
111
112
|
}
|
|
112
|
-
const envUrl =
|
|
113
|
+
const envUrl = _chunkW42MYR3Yjs.ENV.API_URL;
|
|
113
114
|
if (!envUrl) {
|
|
114
115
|
throw new Error(
|
|
115
116
|
"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable."
|
|
@@ -122,7 +123,7 @@ function getServerAppUrl() {
|
|
|
122
123
|
if (_optionalChain([_serverConfig, 'optionalAccess', _20 => _20.appUrl])) {
|
|
123
124
|
return _serverConfig.appUrl;
|
|
124
125
|
}
|
|
125
|
-
const envUrl =
|
|
126
|
+
const envUrl = _chunkW42MYR3Yjs.ENV.APP_URL;
|
|
126
127
|
if (!envUrl) {
|
|
127
128
|
throw new Error(
|
|
128
129
|
"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable."
|
|
@@ -158,7 +159,7 @@ async function ServerJsonApiGet(params) {
|
|
|
158
159
|
language: params.language,
|
|
159
160
|
additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _23 => _23.additionalHeaders])
|
|
160
161
|
});
|
|
161
|
-
return
|
|
162
|
+
return _chunkW42MYR3Yjs.translateResponse.call(void 0, {
|
|
162
163
|
classKey: params.classKey,
|
|
163
164
|
apiResponse,
|
|
164
165
|
companyId: params.companyId,
|
|
@@ -179,7 +180,7 @@ async function ServerJsonApiPost(params) {
|
|
|
179
180
|
if (!body) {
|
|
180
181
|
body = {};
|
|
181
182
|
} else if (params.overridesJsonApiCreation !== true) {
|
|
182
|
-
body =
|
|
183
|
+
body = _chunkW42MYR3Yjs.JsonApiDataFactory.create(params.classKey, body);
|
|
183
184
|
}
|
|
184
185
|
const apiResponse = await _chunkIOLU4ASDjs.serverRequest.call(void 0, {
|
|
185
186
|
method: "POST",
|
|
@@ -191,7 +192,7 @@ async function ServerJsonApiPost(params) {
|
|
|
191
192
|
language: params.language,
|
|
192
193
|
additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _24 => _24.additionalHeaders])
|
|
193
194
|
});
|
|
194
|
-
return
|
|
195
|
+
return _chunkW42MYR3Yjs.translateResponse.call(void 0, {
|
|
195
196
|
classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
|
|
196
197
|
apiResponse,
|
|
197
198
|
companyId: params.companyId,
|
|
@@ -206,7 +207,7 @@ async function ServerJsonApiPut(params) {
|
|
|
206
207
|
if (!body) {
|
|
207
208
|
body = {};
|
|
208
209
|
} else {
|
|
209
|
-
body =
|
|
210
|
+
body = _chunkW42MYR3Yjs.JsonApiDataFactory.create(params.classKey, body);
|
|
210
211
|
}
|
|
211
212
|
const apiResponse = await _chunkIOLU4ASDjs.serverRequest.call(void 0, {
|
|
212
213
|
method: "PUT",
|
|
@@ -218,7 +219,7 @@ async function ServerJsonApiPut(params) {
|
|
|
218
219
|
language: params.language,
|
|
219
220
|
additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _25 => _25.additionalHeaders])
|
|
220
221
|
});
|
|
221
|
-
return
|
|
222
|
+
return _chunkW42MYR3Yjs.translateResponse.call(void 0, {
|
|
222
223
|
classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
|
|
223
224
|
apiResponse,
|
|
224
225
|
companyId: params.companyId,
|
|
@@ -233,7 +234,7 @@ async function ServerJsonApiPatch(params) {
|
|
|
233
234
|
if (!body) {
|
|
234
235
|
body = {};
|
|
235
236
|
} else if (params.overridesJsonApiCreation !== true) {
|
|
236
|
-
body =
|
|
237
|
+
body = _chunkW42MYR3Yjs.JsonApiDataFactory.create(params.classKey, body);
|
|
237
238
|
}
|
|
238
239
|
const apiResponse = await _chunkIOLU4ASDjs.serverRequest.call(void 0, {
|
|
239
240
|
method: "PATCH",
|
|
@@ -245,7 +246,7 @@ async function ServerJsonApiPatch(params) {
|
|
|
245
246
|
language: params.language,
|
|
246
247
|
additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _26 => _26.additionalHeaders])
|
|
247
248
|
});
|
|
248
|
-
return
|
|
249
|
+
return _chunkW42MYR3Yjs.translateResponse.call(void 0, {
|
|
249
250
|
classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
|
|
250
251
|
apiResponse,
|
|
251
252
|
companyId: params.companyId,
|
|
@@ -264,7 +265,7 @@ async function ServerJsonApiDelete(params) {
|
|
|
264
265
|
language: params.language,
|
|
265
266
|
additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _27 => _27.additionalHeaders])
|
|
266
267
|
});
|
|
267
|
-
return
|
|
268
|
+
return _chunkW42MYR3Yjs.translateResponse.call(void 0, {
|
|
268
269
|
classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
|
|
269
270
|
apiResponse,
|
|
270
271
|
companyId: params.companyId,
|
|
@@ -296,5 +297,5 @@ _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiDelete, "ServerJsonApiDelete")
|
|
|
296
297
|
|
|
297
298
|
|
|
298
299
|
|
|
299
|
-
exports.ServerAuthService =
|
|
300
|
+
exports.ServerAuthService = _chunkS2C5V2XZjs.AuthService; exports.ServerCompanyService = _chunkS2C5V2XZjs.CompanyService; exports.ServerContentService = _chunkS2C5V2XZjs.ContentService; exports.ServerFeatureService = _chunkS2C5V2XZjs.FeatureService; exports.ServerJsonApiDelete = ServerJsonApiDelete; exports.ServerJsonApiGet = ServerJsonApiGet; exports.ServerJsonApiPatch = ServerJsonApiPatch; exports.ServerJsonApiPost = ServerJsonApiPost; exports.ServerJsonApiPut = ServerJsonApiPut; exports.ServerNotificationService = _chunkS2C5V2XZjs.NotificationService; exports.ServerPushService = _chunkS2C5V2XZjs.PushService; exports.ServerRoleService = _chunkS2C5V2XZjs.RoleService; exports.ServerS3Service = _chunkS2C5V2XZjs.S3Service; exports.ServerSession = ServerSession; exports.ServerUserService = _chunkS2C5V2XZjs.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
301
|
//# sourceMappingURL=index.js.map
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","../../src/server/cache.ts","../../src/server/ServerSession.ts","../../src/server/JsonApiServer.ts"],"names":[],"mappings":"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EwC,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AApCsB;AA+CY;AACV,EAAA;AACa,EAAA;AAEjB,EAAA;AACP,EAAA;AACD,IAAA;AACqC,EAAA;AACL,IAAA;AAC1C,EAAA;AAEwC,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AArCsB;AA6CY;AACV,EAAA;AACa,EAAA;AAEK,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACkB,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AAzBsB;AH+C6B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","sourcesContent":[null,"// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag } from \"next/cache\";\n\nexport type CacheProfile = \"seconds\" | \"minutes\" | \"hours\" | \"days\" | \"weeks\" | \"max\" | \"default\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTag(tag: string, profile: CacheProfile = \"max\"): Promise<void> {\n revalidateTag(tag, profile);\n}\n\n/**\n * Revalidate multiple cache tags.\n *\n * @param tags - Array of cache tags to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTags(tags: string[], profile: CacheProfile = \"max\"): Promise<void> {\n for (const tag of tags) {\n revalidateTag(tag, profile);\n }\n}\n","import { cookies } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\n\nexport class ServerSession {\n static async isLogged() {\n const cookieStore = await cookies();\n const token = cookieStore.get(\"token\");\n\n if (!token || !token.value) return false;\n return true;\n }\n\n static async companyId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"companyId\")?.value ?? \"\";\n }\n\n static async userId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"userId\")?.value ?? \"\";\n }\n\n static async checkPermission<M extends ModuleWithPermissions>(params: { module: M; action: Action; data?: any }) {\n if (!(await this.hasPermissionToModule(params))) redirect(`/401`);\n }\n\n static async hasRole(roleId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const roles = cookieStore.get(\"roles\")?.value;\n\n if (!roles || !roles.includes(roleId)) return false;\n\n return true;\n }\n\n static async hasFeature(featureId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const features = cookieStore.get(\"features\")?.value;\n\n if (!features || !features.includes(featureId)) return false;\n\n return true;\n }\n\n static async hasPermissionToModule<M extends ModuleWithPermissions>(params: {\n module: M;\n action: Action;\n data?: any;\n }): Promise<boolean> {\n const cookieStore = await cookies();\n\n if (params.module.feature) {\n const features = cookieStore.get(\"features\")?.value;\n\n if (features && !features.includes(params.module.feature)) return false;\n }\n\n const rawModules = cookieStore.get(\"modules\")?.value;\n if (!rawModules) return false;\n\n const modules: {\n id: string;\n permissions: {\n create: boolean | string;\n read: boolean | string;\n update: boolean | string;\n delete: boolean | string;\n };\n }[] = JSON.parse(ungzip(Buffer.from(rawModules, \"base64\"), { toText: true }));\n\n const selectedModule = modules.find((module) => module.id === params.module.moduleId);\n\n return checkPermissionsFromServer({\n module: params.module,\n action: params.action,\n data: params.data,\n userId: await this.userId(),\n selectedModule: selectedModule,\n });\n\n // if (!selectedModule) return false;\n\n // if (!selectedModule.permissions[params.action]) return false;\n // if (typeof selectedModule.permissions[params.action] === \"boolean\")\n // return selectedModule.permissions[params.action] as boolean;\n\n // if (!params.data) return false;\n\n // return params.data[selectedModule.permissions[params.action] as string] === this.userId;\n }\n}\n","// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { serverRequest } from \"./request\";\nimport { getServerToken } from \"./token\";\n\n// Config storage for server contexts\nlet _serverConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API server client.\n * Call this in your Bootstrapper or server initialization.\n */\nexport function configureServerJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _serverConfig = config;\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nexport function getServerApiUrl(): string {\n if (_serverConfig?.apiUrl) {\n return _serverConfig.apiUrl;\n }\n const envUrl = process.env.NEXT_PUBLIC_API_URL;\n if (!envUrl) {\n throw new Error(\n \"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\",\n );\n }\n return envUrl;\n}\n\nexport function getServerAppUrl(): string {\n if (_serverConfig?.appUrl) {\n return _serverConfig.appUrl;\n }\n const envUrl = process.env.NEXT_PUBLIC_ADDRESS;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getServerTrackablePages(): ModuleWithPermissions[] {\n return _serverConfig?.trackablePages ?? [];\n}\n\nfunction runServerBootstrapper(): void {\n if (_serverConfig?.bootstrapper) {\n _serverConfig.bootstrapper();\n }\n}\n\nfunction buildServerUrl(endpoint: string): string {\n const apiUrl = getServerApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function ServerJsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"GET\",\n url: buildServerUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n ServerJsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function ServerJsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"POST\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PUT\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PATCH\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"DELETE\",\n url: buildServerUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","../../src/server/cache.ts","../../src/server/ServerSession.ts","../../src/server/JsonApiServer.ts"],"names":[],"mappings":"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IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AApCsB;AA+CY;AACV,EAAA;AACa,EAAA;AAEjB,EAAA;AACP,EAAA;AACD,IAAA;AACqC,EAAA;AACL,IAAA;AAC1C,EAAA;AAEwC,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AArCsB;AA6CY;AACV,EAAA;AACa,EAAA;AAEK,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACkB,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AAzBsB;AH+C6B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","sourcesContent":[null,"// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag } from \"next/cache\";\n\nexport type CacheProfile = \"seconds\" | \"minutes\" | \"hours\" | \"days\" | \"weeks\" | \"max\" | \"default\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTag(tag: string, profile: CacheProfile = \"max\"): Promise<void> {\n revalidateTag(tag, profile);\n}\n\n/**\n * Revalidate multiple cache tags.\n *\n * @param tags - Array of cache tags to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTags(tags: string[], profile: CacheProfile = \"max\"): Promise<void> {\n for (const tag of tags) {\n revalidateTag(tag, profile);\n }\n}\n","import { cookies } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\n\nexport class ServerSession {\n static async isLogged() {\n const cookieStore = await cookies();\n const token = cookieStore.get(\"token\");\n\n if (!token || !token.value) return false;\n return true;\n }\n\n static async companyId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"companyId\")?.value ?? \"\";\n }\n\n static async userId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"userId\")?.value ?? \"\";\n }\n\n static async checkPermission<M extends ModuleWithPermissions>(params: { module: M; action: Action; data?: any }) {\n if (!(await this.hasPermissionToModule(params))) redirect(`/401`);\n }\n\n static async hasRole(roleId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const roles = cookieStore.get(\"roles\")?.value;\n\n if (!roles || !roles.includes(roleId)) return false;\n\n return true;\n }\n\n static async hasFeature(featureId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const features = cookieStore.get(\"features\")?.value;\n\n if (!features || !features.includes(featureId)) return false;\n\n return true;\n }\n\n static async hasPermissionToModule<M extends ModuleWithPermissions>(params: {\n module: M;\n action: Action;\n data?: any;\n }): Promise<boolean> {\n const cookieStore = await cookies();\n\n if (params.module.feature) {\n const features = cookieStore.get(\"features\")?.value;\n\n if (features && !features.includes(params.module.feature)) return false;\n }\n\n const rawModules = cookieStore.get(\"modules\")?.value;\n if (!rawModules) return false;\n\n const modules: {\n id: string;\n permissions: {\n create: boolean | string;\n read: boolean | string;\n update: boolean | string;\n delete: boolean | string;\n };\n }[] = JSON.parse(ungzip(Buffer.from(rawModules, \"base64\"), { toText: true }));\n\n const selectedModule = modules.find((module) => module.id === params.module.moduleId);\n\n return checkPermissionsFromServer({\n module: params.module,\n action: params.action,\n data: params.data,\n userId: await this.userId(),\n selectedModule: selectedModule,\n });\n\n // if (!selectedModule) return false;\n\n // if (!selectedModule.permissions[params.action]) return false;\n // if (typeof selectedModule.permissions[params.action] === \"boolean\")\n // return selectedModule.permissions[params.action] as boolean;\n\n // if (!params.data) return false;\n\n // return params.data[selectedModule.permissions[params.action] as string] === this.userId;\n }\n}\n","// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { ENV } from \"../core/env\";\nimport { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { serverRequest } from \"./request\";\nimport { getServerToken } from \"./token\";\n\n// Config storage for server contexts\nlet _serverConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API server client.\n * Call this in your Bootstrapper or server initialization.\n */\nexport function configureServerJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _serverConfig = config;\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nexport function getServerApiUrl(): string {\n if (_serverConfig?.apiUrl) {\n return _serverConfig.apiUrl;\n }\n const envUrl = ENV.API_URL;\n if (!envUrl) {\n throw new Error(\n \"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\",\n );\n }\n return envUrl;\n}\n\nexport function getServerAppUrl(): string {\n if (_serverConfig?.appUrl) {\n return _serverConfig.appUrl;\n }\n const envUrl = ENV.APP_URL;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getServerTrackablePages(): ModuleWithPermissions[] {\n return _serverConfig?.trackablePages ?? [];\n}\n\nfunction runServerBootstrapper(): void {\n if (_serverConfig?.bootstrapper) {\n _serverConfig.bootstrapper();\n }\n}\n\nfunction buildServerUrl(endpoint: string): string {\n const apiUrl = getServerApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function ServerJsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"GET\",\n url: buildServerUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n ServerJsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function ServerJsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"POST\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PUT\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PATCH\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"DELETE\",\n url: buildServerUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"]}
|
package/dist/server/index.mjs
CHANGED
|
@@ -15,13 +15,14 @@ import {
|
|
|
15
15
|
S3Service,
|
|
16
16
|
UserService,
|
|
17
17
|
checkPermissionsFromServer
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-KW6LYVFJ.mjs";
|
|
19
19
|
import "../chunk-AUXK7QSA.mjs";
|
|
20
20
|
import "../chunk-C7C7VY4F.mjs";
|
|
21
21
|
import {
|
|
22
|
+
ENV,
|
|
22
23
|
JsonApiDataFactory,
|
|
23
24
|
translateResponse
|
|
24
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-RVASYIQG.mjs";
|
|
25
26
|
import {
|
|
26
27
|
__name
|
|
27
28
|
} from "../chunk-PAWJFY3S.mjs";
|
|
@@ -109,7 +110,7 @@ function getServerApiUrl() {
|
|
|
109
110
|
if (_serverConfig?.apiUrl) {
|
|
110
111
|
return _serverConfig.apiUrl;
|
|
111
112
|
}
|
|
112
|
-
const envUrl =
|
|
113
|
+
const envUrl = ENV.API_URL;
|
|
113
114
|
if (!envUrl) {
|
|
114
115
|
throw new Error(
|
|
115
116
|
"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable."
|
|
@@ -122,7 +123,7 @@ function getServerAppUrl() {
|
|
|
122
123
|
if (_serverConfig?.appUrl) {
|
|
123
124
|
return _serverConfig.appUrl;
|
|
124
125
|
}
|
|
125
|
-
const envUrl =
|
|
126
|
+
const envUrl = ENV.APP_URL;
|
|
126
127
|
if (!envUrl) {
|
|
127
128
|
throw new Error(
|
|
128
129
|
"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable."
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/server/cache.ts","../../src/server/ServerSession.ts","../../src/server/JsonApiServer.ts"],"sourcesContent":["// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag } from \"next/cache\";\n\nexport type CacheProfile = \"seconds\" | \"minutes\" | \"hours\" | \"days\" | \"weeks\" | \"max\" | \"default\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTag(tag: string, profile: CacheProfile = \"max\"): Promise<void> {\n revalidateTag(tag, profile);\n}\n\n/**\n * Revalidate multiple cache tags.\n *\n * @param tags - Array of cache tags to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTags(tags: string[], profile: CacheProfile = \"max\"): Promise<void> {\n for (const tag of tags) {\n revalidateTag(tag, profile);\n }\n}\n","import { cookies } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\n\nexport class ServerSession {\n static async isLogged() {\n const cookieStore = await cookies();\n const token = cookieStore.get(\"token\");\n\n if (!token || !token.value) return false;\n return true;\n }\n\n static async companyId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"companyId\")?.value ?? \"\";\n }\n\n static async userId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"userId\")?.value ?? \"\";\n }\n\n static async checkPermission<M extends ModuleWithPermissions>(params: { module: M; action: Action; data?: any }) {\n if (!(await this.hasPermissionToModule(params))) redirect(`/401`);\n }\n\n static async hasRole(roleId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const roles = cookieStore.get(\"roles\")?.value;\n\n if (!roles || !roles.includes(roleId)) return false;\n\n return true;\n }\n\n static async hasFeature(featureId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const features = cookieStore.get(\"features\")?.value;\n\n if (!features || !features.includes(featureId)) return false;\n\n return true;\n }\n\n static async hasPermissionToModule<M extends ModuleWithPermissions>(params: {\n module: M;\n action: Action;\n data?: any;\n }): Promise<boolean> {\n const cookieStore = await cookies();\n\n if (params.module.feature) {\n const features = cookieStore.get(\"features\")?.value;\n\n if (features && !features.includes(params.module.feature)) return false;\n }\n\n const rawModules = cookieStore.get(\"modules\")?.value;\n if (!rawModules) return false;\n\n const modules: {\n id: string;\n permissions: {\n create: boolean | string;\n read: boolean | string;\n update: boolean | string;\n delete: boolean | string;\n };\n }[] = JSON.parse(ungzip(Buffer.from(rawModules, \"base64\"), { toText: true }));\n\n const selectedModule = modules.find((module) => module.id === params.module.moduleId);\n\n return checkPermissionsFromServer({\n module: params.module,\n action: params.action,\n data: params.data,\n userId: await this.userId(),\n selectedModule: selectedModule,\n });\n\n // if (!selectedModule) return false;\n\n // if (!selectedModule.permissions[params.action]) return false;\n // if (typeof selectedModule.permissions[params.action] === \"boolean\")\n // return selectedModule.permissions[params.action] as boolean;\n\n // if (!params.data) return false;\n\n // return params.data[selectedModule.permissions[params.action] as string] === this.userId;\n }\n}\n","// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { serverRequest } from \"./request\";\nimport { getServerToken } from \"./token\";\n\n// Config storage for server contexts\nlet _serverConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API server client.\n * Call this in your Bootstrapper or server initialization.\n */\nexport function configureServerJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _serverConfig = config;\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nexport function getServerApiUrl(): string {\n if (_serverConfig?.apiUrl) {\n return _serverConfig.apiUrl;\n }\n const envUrl = process.env.NEXT_PUBLIC_API_URL;\n if (!envUrl) {\n throw new Error(\n \"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\",\n );\n }\n return envUrl;\n}\n\nexport function getServerAppUrl(): string {\n if (_serverConfig?.appUrl) {\n return _serverConfig.appUrl;\n }\n const envUrl = process.env.NEXT_PUBLIC_ADDRESS;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getServerTrackablePages(): ModuleWithPermissions[] {\n return _serverConfig?.trackablePages ?? [];\n}\n\nfunction runServerBootstrapper(): void {\n if (_serverConfig?.bootstrapper) {\n _serverConfig.bootstrapper();\n }\n}\n\nfunction buildServerUrl(endpoint: string): string {\n const apiUrl = getServerApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function ServerJsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"GET\",\n url: buildServerUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n ServerJsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function ServerJsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"POST\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PUT\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PATCH\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"DELETE\",\n url: buildServerUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/server/cache.ts","../../src/server/ServerSession.ts","../../src/server/JsonApiServer.ts"],"sourcesContent":["// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag } from \"next/cache\";\n\nexport type CacheProfile = \"seconds\" | \"minutes\" | \"hours\" | \"days\" | \"weeks\" | \"max\" | \"default\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTag(tag: string, profile: CacheProfile = \"max\"): Promise<void> {\n revalidateTag(tag, profile);\n}\n\n/**\n * Revalidate multiple cache tags.\n *\n * @param tags - Array of cache tags to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTags(tags: string[], profile: CacheProfile = \"max\"): Promise<void> {\n for (const tag of tags) {\n revalidateTag(tag, profile);\n }\n}\n","import { cookies } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\n\nexport class ServerSession {\n static async isLogged() {\n const cookieStore = await cookies();\n const token = cookieStore.get(\"token\");\n\n if (!token || !token.value) return false;\n return true;\n }\n\n static async companyId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"companyId\")?.value ?? \"\";\n }\n\n static async userId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"userId\")?.value ?? \"\";\n }\n\n static async checkPermission<M extends ModuleWithPermissions>(params: { module: M; action: Action; data?: any }) {\n if (!(await this.hasPermissionToModule(params))) redirect(`/401`);\n }\n\n static async hasRole(roleId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const roles = cookieStore.get(\"roles\")?.value;\n\n if (!roles || !roles.includes(roleId)) return false;\n\n return true;\n }\n\n static async hasFeature(featureId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const features = cookieStore.get(\"features\")?.value;\n\n if (!features || !features.includes(featureId)) return false;\n\n return true;\n }\n\n static async hasPermissionToModule<M extends ModuleWithPermissions>(params: {\n module: M;\n action: Action;\n data?: any;\n }): Promise<boolean> {\n const cookieStore = await cookies();\n\n if (params.module.feature) {\n const features = cookieStore.get(\"features\")?.value;\n\n if (features && !features.includes(params.module.feature)) return false;\n }\n\n const rawModules = cookieStore.get(\"modules\")?.value;\n if (!rawModules) return false;\n\n const modules: {\n id: string;\n permissions: {\n create: boolean | string;\n read: boolean | string;\n update: boolean | string;\n delete: boolean | string;\n };\n }[] = JSON.parse(ungzip(Buffer.from(rawModules, \"base64\"), { toText: true }));\n\n const selectedModule = modules.find((module) => module.id === params.module.moduleId);\n\n return checkPermissionsFromServer({\n module: params.module,\n action: params.action,\n data: params.data,\n userId: await this.userId(),\n selectedModule: selectedModule,\n });\n\n // if (!selectedModule) return false;\n\n // if (!selectedModule.permissions[params.action]) return false;\n // if (typeof selectedModule.permissions[params.action] === \"boolean\")\n // return selectedModule.permissions[params.action] as boolean;\n\n // if (!params.data) return false;\n\n // return params.data[selectedModule.permissions[params.action] as string] === this.userId;\n }\n}\n","// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { ENV } from \"../core/env\";\nimport { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { serverRequest } from \"./request\";\nimport { getServerToken } from \"./token\";\n\n// Config storage for server contexts\nlet _serverConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API server client.\n * Call this in your Bootstrapper or server initialization.\n */\nexport function configureServerJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _serverConfig = config;\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nexport function getServerApiUrl(): string {\n if (_serverConfig?.apiUrl) {\n return _serverConfig.apiUrl;\n }\n const envUrl = ENV.API_URL;\n if (!envUrl) {\n throw new Error(\n \"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\",\n );\n }\n return envUrl;\n}\n\nexport function getServerAppUrl(): string {\n if (_serverConfig?.appUrl) {\n return _serverConfig.appUrl;\n }\n const envUrl = ENV.APP_URL;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getServerTrackablePages(): ModuleWithPermissions[] {\n return _serverConfig?.trackablePages ?? [];\n}\n\nfunction runServerBootstrapper(): void {\n if (_serverConfig?.bootstrapper) {\n _serverConfig.bootstrapper();\n }\n}\n\nfunction buildServerUrl(endpoint: string): string {\n const apiUrl = getServerApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function ServerJsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"GET\",\n url: buildServerUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n ServerJsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function ServerJsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"POST\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PUT\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await serverRequest({\n method: \"PATCH\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function ServerJsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"DELETE\",\n url: buildServerUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
+
import { ENV } from "../core/env";
|
|
3
4
|
import { JsonApiDataFactory } from "../core/factories/JsonApiDataFactory";
|
|
4
5
|
import { ApiRequestDataTypeInterface } from "../core/interfaces/ApiRequestDataTypeInterface";
|
|
5
6
|
import { ApiResponseInterface } from "../core/interfaces/ApiResponseInterface";
|
|
@@ -40,7 +41,7 @@ export function getClientApiUrl(): string {
|
|
|
40
41
|
if (_clientConfig?.apiUrl) {
|
|
41
42
|
return _clientConfig.apiUrl;
|
|
42
43
|
}
|
|
43
|
-
const envUrl =
|
|
44
|
+
const envUrl = ENV.API_URL;
|
|
44
45
|
if (!envUrl) {
|
|
45
46
|
throw new Error(
|
|
46
47
|
"API URL not configured. Use configureClientJsonApi() or set NEXT_PUBLIC_API_URL environment variable.",
|
|
@@ -53,7 +54,7 @@ export function getClientAppUrl(): string {
|
|
|
53
54
|
if (_clientConfig?.appUrl) {
|
|
54
55
|
return _clientConfig.appUrl;
|
|
55
56
|
}
|
|
56
|
-
const envUrl =
|
|
57
|
+
const envUrl = ENV.APP_URL;
|
|
57
58
|
if (!envUrl) {
|
|
58
59
|
throw new Error(
|
|
59
60
|
"App URL not configured. Use configureClientJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.",
|
package/src/client/config.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { ModuleWithPermissions } from "../permissions/types";
|
|
4
|
+
import { ENV } from "../core/env";
|
|
4
5
|
import { setBootstrapper } from "../core/registry/bootstrapStore";
|
|
5
6
|
import { _setStaticHelpContent } from "../core/registry/helpStore";
|
|
6
7
|
import type { HelpContentConfig } from "../features/help/interfaces/help-content-config.interface";
|
|
@@ -65,10 +66,7 @@ export function getApiUrl(): string {
|
|
|
65
66
|
if (_clientConfig?.apiUrl) {
|
|
66
67
|
return _clientConfig.apiUrl;
|
|
67
68
|
}
|
|
68
|
-
|
|
69
|
-
return process.env.NEXT_PUBLIC_API_URL;
|
|
70
|
-
}
|
|
71
|
-
return "";
|
|
69
|
+
return ENV.API_URL;
|
|
72
70
|
}
|
|
73
71
|
|
|
74
72
|
/**
|
|
@@ -80,10 +78,7 @@ export function getApiUrl(): string {
|
|
|
80
78
|
* OAuth hrefs).
|
|
81
79
|
*/
|
|
82
80
|
export function getPublicApiUrl(): string {
|
|
83
|
-
|
|
84
|
-
return process.env.NEXT_PUBLIC_API_URL;
|
|
85
|
-
}
|
|
86
|
-
return "";
|
|
81
|
+
return ENV.API_URL;
|
|
87
82
|
}
|
|
88
83
|
|
|
89
84
|
/**
|
|
@@ -93,8 +88,8 @@ export function getAppUrl(): string {
|
|
|
93
88
|
if (_clientConfig?.appUrl) {
|
|
94
89
|
return _clientConfig.appUrl;
|
|
95
90
|
}
|
|
96
|
-
if (
|
|
97
|
-
return
|
|
91
|
+
if (ENV.APP_URL_ALTERNATE) {
|
|
92
|
+
return ENV.APP_URL_ALTERNATE;
|
|
98
93
|
}
|
|
99
94
|
if (typeof window !== "undefined") {
|
|
100
95
|
return window.location.origin;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { useEffect, useRef, useState } from "react";
|
|
4
|
+
import { ENV } from "../../core/env";
|
|
4
5
|
import { Input } from "../../shadcnui";
|
|
5
6
|
import { cn } from "../../utils";
|
|
6
7
|
import { FormFieldWrapper } from "./FormFieldWrapper";
|
|
@@ -86,7 +87,7 @@ export function FormPlaceAutocomplete({
|
|
|
86
87
|
|
|
87
88
|
// Initialize API key
|
|
88
89
|
useEffect(() => {
|
|
89
|
-
const key =
|
|
90
|
+
const key = ENV.GOOGLE_MAPS_API_KEY;
|
|
90
91
|
|
|
91
92
|
if (!key) {
|
|
92
93
|
console.error("Google Maps API key not found. Please set NEXT_PUBLIC_GOOGLE_MAPS_API_KEY environment variable.");
|