@carlonicora/nextjs-jsonapi 6.30.0 → 6.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BlockNoteEditor-SQQF7OCY.mjs → BlockNoteEditor-HQTBH527.mjs} +4 -4
- package/dist/{BlockNoteEditor-FTRTY4YJ.js → BlockNoteEditor-YONN45A3.js} +24 -24
- package/dist/{BlockNoteEditor-FTRTY4YJ.js.map → BlockNoteEditor-YONN45A3.js.map} +1 -1
- package/dist/{BlockNoteViewer-76CKL6W5.mjs → BlockNoteViewer-BNZEXGVT.mjs} +2 -2
- package/dist/{BlockNoteViewer-B25WKYQP.js → BlockNoteViewer-YONLBNXW.js} +3 -3
- package/dist/{BlockNoteViewer-B25WKYQP.js.map → BlockNoteViewer-YONLBNXW.js.map} +1 -1
- package/dist/billing/index.js +465 -465
- package/dist/billing/index.mjs +3 -3
- package/dist/{chunk-77JC2UCF.js → chunk-5XP5G45B.js} +23 -10
- package/dist/chunk-5XP5G45B.js.map +1 -0
- package/dist/{chunk-MNN6MTEN.mjs → chunk-6DNGLY5Y.mjs} +156 -127
- package/dist/chunk-6DNGLY5Y.mjs.map +1 -0
- package/dist/{chunk-7MGXQIEP.mjs → chunk-FDKAVSZ6.mjs} +2 -2
- package/dist/{chunk-FJUKLVVX.mjs → chunk-HNK2O6YE.mjs} +23 -10
- package/dist/chunk-HNK2O6YE.mjs.map +1 -0
- package/dist/{chunk-S4FSGMKX.js → chunk-J37GJKCB.js} +798 -769
- package/dist/chunk-J37GJKCB.js.map +1 -0
- package/dist/{chunk-M7YK5CCE.mjs → chunk-JL6XL5NK.mjs} +9 -2
- package/dist/chunk-JL6XL5NK.mjs.map +1 -0
- package/dist/{chunk-F3EVYBMA.js → chunk-NQL2NDKH.js} +4 -4
- package/dist/{chunk-F3EVYBMA.js.map → chunk-NQL2NDKH.js.map} +1 -1
- package/dist/{chunk-ONU4WCDG.js → chunk-Q5SMFSE4.js} +11 -4
- package/dist/chunk-Q5SMFSE4.js.map +1 -0
- package/dist/client/index.js +4 -4
- package/dist/client/index.mjs +3 -3
- package/dist/components/index.js +4 -4
- package/dist/components/index.mjs +3 -3
- package/dist/contexts/index.js +4 -4
- package/dist/contexts/index.mjs +3 -3
- package/dist/core/index.js +2 -2
- package/dist/core/index.mjs +1 -1
- package/dist/email-automations/index.js +105 -105
- package/dist/email-automations/index.mjs +3 -3
- package/dist/features/analytics/index.js +114 -114
- package/dist/features/analytics/index.mjs +3 -3
- package/dist/features/analytics/server.js +4 -4
- package/dist/features/analytics/server.mjs +2 -2
- package/dist/features/auth/components/GdprConsentSection.d.ts +2 -1
- package/dist/features/auth/components/GdprConsentSection.d.ts.map +1 -1
- package/dist/features/auth/components/forms/Login.d.ts.map +1 -1
- package/dist/features/auth/components/forms/Logout.d.ts +7 -1
- package/dist/features/auth/components/forms/Logout.d.ts.map +1 -1
- package/dist/features/auth/components/forms/Register.d.ts.map +1 -1
- package/dist/features/auth/data/auth.service.d.ts +8 -3
- package/dist/features/auth/data/auth.service.d.ts.map +1 -1
- package/dist/features/auth/data/pending-registration.d.ts +2 -0
- package/dist/features/auth/data/pending-registration.d.ts.map +1 -1
- package/dist/features/auth/data/pending-registration.interface.d.ts +1 -0
- package/dist/features/auth/data/pending-registration.interface.d.ts.map +1 -1
- package/dist/features/auth/hooks/useCompleteLogin.d.ts +9 -0
- package/dist/features/auth/hooks/useCompleteLogin.d.ts.map +1 -0
- package/dist/features/blog/index.js +129 -129
- package/dist/features/blog/index.mjs +3 -3
- package/dist/features/blog/server.js +7 -7
- package/dist/features/blog/server.mjs +1 -1
- package/dist/features/help/index.js +37 -37
- package/dist/features/help/index.mjs +3 -3
- package/dist/features/tokenusage/index.js +114 -114
- package/dist/features/tokenusage/index.mjs +3 -3
- package/dist/index.js +3 -3
- package/dist/index.mjs +2 -2
- package/dist/login/config.d.ts +3 -0
- package/dist/login/config.d.ts.map +1 -1
- package/dist/login/index.d.ts +1 -1
- package/dist/login/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -3
- package/dist/server/index.mjs +2 -2
- package/package.json +1 -1
- package/src/features/auth/components/GdprConsentSection.tsx +3 -1
- package/src/features/auth/components/forms/Login.tsx +4 -32
- package/src/features/auth/components/forms/Logout.tsx +8 -2
- package/src/features/auth/components/forms/Register.tsx +66 -36
- package/src/features/auth/data/__tests__/auth.oauth-completion.spec.ts +44 -0
- package/src/features/auth/data/__tests__/pending-registration.spec.ts +8 -0
- package/src/features/auth/data/auth.service.ts +21 -15
- package/src/features/auth/data/pending-registration.interface.ts +1 -0
- package/src/features/auth/data/pending-registration.ts +6 -0
- package/src/features/auth/hooks/__tests__/useCompleteLogin.spec.tsx +85 -0
- package/src/features/auth/hooks/useCompleteLogin.ts +47 -0
- package/src/login/__tests__/config.spec.ts +21 -0
- package/src/login/config.ts +8 -0
- package/src/login/index.ts +1 -0
- package/dist/chunk-77JC2UCF.js.map +0 -1
- package/dist/chunk-FJUKLVVX.mjs.map +0 -1
- package/dist/chunk-M7YK5CCE.mjs.map +0 -1
- package/dist/chunk-MNN6MTEN.mjs.map +0 -1
- package/dist/chunk-ONU4WCDG.js.map +0 -1
- package/dist/chunk-S4FSGMKX.js.map +0 -1
- /package/dist/{BlockNoteEditor-SQQF7OCY.mjs.map → BlockNoteEditor-HQTBH527.mjs.map} +0 -0
- /package/dist/{BlockNoteViewer-76CKL6W5.mjs.map → BlockNoteViewer-BNZEXGVT.mjs.map} +0 -0
- /package/dist/{chunk-7MGXQIEP.mjs.map → chunk-FDKAVSZ6.mjs.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AbstractService
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HNK2O6YE.mjs";
|
|
4
4
|
import {
|
|
5
5
|
EndpointCreator,
|
|
6
6
|
Modules
|
|
@@ -88,12 +88,14 @@ var _useGoogleAuth = false;
|
|
|
88
88
|
var _useInternalAuth = true;
|
|
89
89
|
var _allowRegistration = true;
|
|
90
90
|
var _registrationMode = "open";
|
|
91
|
+
var _requireCompanyName = true;
|
|
91
92
|
function configureLogin(params) {
|
|
92
93
|
_useDiscordAuth = !!params.discordClientId;
|
|
93
94
|
_useGoogleAuth = !!params.googleClientId;
|
|
94
95
|
_useInternalAuth = params.useInternalAuth ?? true;
|
|
95
96
|
_allowRegistration = params.allowRegistration ?? true;
|
|
96
97
|
_registrationMode = params.registrationMode ?? "open";
|
|
98
|
+
_requireCompanyName = params.requireCompanyName ?? true;
|
|
97
99
|
}
|
|
98
100
|
__name(configureLogin, "configureLogin");
|
|
99
101
|
function isDiscordAuthEnabled() {
|
|
@@ -116,6 +118,10 @@ function getRegistrationMode() {
|
|
|
116
118
|
return _registrationMode;
|
|
117
119
|
}
|
|
118
120
|
__name(getRegistrationMode, "getRegistrationMode");
|
|
121
|
+
function isCompanyNameRequired() {
|
|
122
|
+
return _requireCompanyName;
|
|
123
|
+
}
|
|
124
|
+
__name(isCompanyNameRequired, "isCompanyNameRequired");
|
|
119
125
|
|
|
120
126
|
// src/features/waitlist/config/waitlist.config.ts
|
|
121
127
|
var _waitlistConfig = {};
|
|
@@ -328,6 +334,7 @@ export {
|
|
|
328
334
|
isInternalAuthEnabled,
|
|
329
335
|
isRegistrationAllowed,
|
|
330
336
|
getRegistrationMode,
|
|
337
|
+
isCompanyNameRequired,
|
|
331
338
|
configureWaitlist,
|
|
332
339
|
getWaitlistConfig,
|
|
333
340
|
useWaitlistText,
|
|
@@ -344,4 +351,4 @@ export {
|
|
|
344
351
|
ACTION_TYPES,
|
|
345
352
|
RbacService
|
|
346
353
|
};
|
|
347
|
-
//# sourceMappingURL=chunk-
|
|
354
|
+
//# sourceMappingURL=chunk-JL6XL5NK.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/registry/helpStore.ts","../src/client/config.ts","../src/login/config.ts","../src/features/waitlist/config/waitlist.config.ts","../src/features/referral/config.ts","../src/features/signup-source/signup-source.ts","../src/features/rbac/data/RbacTypes.ts","../src/features/rbac/data/RbacService.ts"],"sourcesContent":["/**\n * Centralized help-content store accessible from client and server contexts.\n * Uses a globalThis Symbol key to persist across HMR/Turbopack reloads and to\n * bridge between the client-side `configureJsonApi` (in `client/config.ts`)\n * and the HelpProvider context. Holds the brand-only HelpContentConfig.\n *\n * NO external dependencies to avoid circular imports.\n *\n * Pattern mirrors `bootstrapStore.ts`.\n */\n\nconst HELP_CONTENT_KEY = Symbol.for(\"nextjs-jsonapi:helpContent\");\n\nconst globalStore = globalThis as unknown as {\n [HELP_CONTENT_KEY]?: unknown | null;\n};\n\nif (globalStore[HELP_CONTENT_KEY] === undefined) {\n globalStore[HELP_CONTENT_KEY] = null;\n}\n\nexport function _setStaticHelpContent(cfg: unknown | null): void {\n globalStore[HELP_CONTENT_KEY] = cfg;\n}\n\nexport function _getStaticHelpContent<T = unknown>(): T | null {\n return (globalStore[HELP_CONTENT_KEY] as T | null) ?? null;\n}\n","\"use client\";\n\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { ENV } from \"../core/env\";\nimport { setBootstrapper } from \"../core/registry/bootstrapStore\";\nimport { _setStaticHelpContent } from \"../core/registry/helpStore\";\nimport type { HelpContentConfig } from \"../features/help/interfaces/help-content-config.interface\";\n\n// Config storage for client-side contexts\nlet _clientConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n stripePublishableKey?: string;\n} | null = null;\n\n/**\n * Configure the JSON:API client. This is the main configuration function.\n * This is typically called during app initialization.\n * @param config.helpContent - Optional help-content config (brand only). Forwarded to the help feature's globalThis-backed store; not stored on the client config.\n */\nexport function configureJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n stripePublishableKey?: string;\n helpContent?: HelpContentConfig;\n}): void {\n const { helpContent, ...rest } = config;\n _clientConfig = rest;\n if (helpContent) {\n _setStaticHelpContent(helpContent);\n }\n // Register and call bootstrapper to register all modules\n if (config.bootstrapper) {\n setBootstrapper(config.bootstrapper);\n config.bootstrapper();\n }\n}\n\n/**\n * Configure the client config. This is typically called during app initialization.\n * @deprecated Use configureJsonApi instead\n */\nexport function configureClientConfig(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n}): void {\n _clientConfig = config;\n}\n\n/**\n * Get the configured API URL.\n *\n * This may resolve to an internal/private host (e.g. a docker-network\n * hostname) when configured to do so for SSR fetches. Do NOT use this for\n * URLs that are rendered into HTML and followed by the browser — use\n * `getPublicApiUrl()` instead.\n */\nexport function getApiUrl(): string {\n if (_clientConfig?.apiUrl) {\n return _clientConfig.apiUrl;\n }\n return ENV.API_URL;\n}\n\n/**\n * Get the public-facing API URL.\n *\n * Always sourced from `NEXT_PUBLIC_API_URL` so it is identical on server\n * and client, and reachable from the user's browser. Use for any URL that\n * gets rendered into HTML the browser will navigate to (links, redirects,\n * OAuth hrefs).\n */\nexport function getPublicApiUrl(): string {\n return ENV.API_URL;\n}\n\n/**\n * Get the configured app URL.\n */\nexport function getAppUrl(): string {\n if (_clientConfig?.appUrl) {\n return _clientConfig.appUrl;\n }\n if (ENV.APP_URL_ALTERNATE) {\n return ENV.APP_URL_ALTERNATE;\n }\n if (typeof window !== \"undefined\") {\n return window.location.origin;\n }\n return \"\";\n}\n\n/**\n * Get the configured trackable pages.\n */\nexport function getTrackablePages(): ModuleWithPermissions[] {\n return _clientConfig?.trackablePages ?? [];\n}\n\n/**\n * Get the configured Stripe publishable key.\n */\nexport function getStripePublishableKey(): string | undefined {\n return _clientConfig?.stripePublishableKey;\n}\n","let _useDiscordAuth: boolean = false;\nlet _useGoogleAuth: boolean = false;\nlet _useInternalAuth: boolean = true;\nlet _allowRegistration: boolean = true;\nlet _registrationMode: \"open\" | \"closed\" | \"waitlist\" = \"open\";\nlet _requireCompanyName: boolean = true;\n\nexport type RegistrationMode = \"open\" | \"closed\" | \"waitlist\";\n\nexport interface LoginConfig {\n discordClientId?: string;\n googleClientId?: string;\n useInternalAuth?: boolean;\n allowRegistration?: boolean;\n registrationMode?: RegistrationMode;\n /** Show and require the company name on sign-up. Default `true`. */\n requireCompanyName?: boolean;\n}\n\nexport function configureLogin(params: LoginConfig): void {\n _useDiscordAuth = !!params.discordClientId;\n _useGoogleAuth = !!params.googleClientId;\n _useInternalAuth = params.useInternalAuth ?? true;\n _allowRegistration = params.allowRegistration ?? true;\n _registrationMode = params.registrationMode ?? \"open\";\n _requireCompanyName = params.requireCompanyName ?? true;\n}\n\nexport function isDiscordAuthEnabled(): boolean {\n return _useDiscordAuth;\n}\n\nexport function isGoogleAuthEnabled(): boolean {\n return _useGoogleAuth;\n}\n\nexport function isInternalAuthEnabled(): boolean {\n return _useInternalAuth;\n}\n\nexport function isRegistrationAllowed(): boolean {\n return _allowRegistration;\n}\n\nexport function getRegistrationMode(): RegistrationMode {\n return _registrationMode;\n}\n\nexport function isCompanyNameRequired(): boolean {\n return _requireCompanyName;\n}\n","import { useI18nTranslations } from \"../../../i18n\";\n\nexport type QuestionnaireFieldType = \"text\" | \"textarea\" | \"select\" | \"checkbox\";\n\nexport interface QuestionnaireOption {\n value: string;\n label: string;\n description?: string;\n}\n\nexport interface QuestionnaireField {\n id: string;\n type: QuestionnaireFieldType;\n label: string;\n description?: string;\n placeholder?: string;\n required?: boolean;\n options?: QuestionnaireOption[];\n}\n\nexport interface WaitlistConfig {\n questionnaire?: QuestionnaireField[];\n heroTitle?: string;\n heroSubtitle?: string;\n heroDescription?: string;\n benefits?: string[];\n /**\n * When true, every text above (hero title, subtitle, description, benefits and\n * the questionnaire's labels, descriptions, placeholders and option labels) is\n * a message key and renders through `t()`. Defaults to false: the strings\n * render as given.\n */\n translate?: boolean;\n}\n\nlet _waitlistConfig: WaitlistConfig = {};\n\nexport function configureWaitlist(config: WaitlistConfig): void {\n _waitlistConfig = config;\n}\n\nexport function getWaitlistConfig(): WaitlistConfig {\n return _waitlistConfig;\n}\n\n/**\n * Resolves a waitlist config text: `t(value)` when the config sets\n * `translate`, the value itself otherwise. Empty values stay undefined.\n */\nexport function useWaitlistText(): (value?: string) => string | undefined {\n const t = useI18nTranslations();\n const translate = getWaitlistConfig().translate === true;\n\n return (value?: string) => {\n if (!value) return undefined;\n return translate ? t(value) : value;\n };\n}\n","/**\n * Configuration interface for frontend referral feature.\n */\nexport interface ReferralConfig {\n /**\n * Whether the referral feature is enabled.\n * When false, components render nothing and hooks return null.\n * @default false\n */\n enabled?: boolean;\n\n /**\n * Name of the cookie used to store referral codes.\n * @default \"referral_code\"\n */\n cookieName?: string;\n\n /**\n * Number of days the referral cookie is valid.\n * @default 30\n */\n cookieDays?: number;\n\n /**\n * Query parameter name for referral code in URL.\n * @default \"ref\"\n */\n urlParamName?: string;\n\n /**\n * Base URL for referral links.\n * @default window.location.origin (client-side only)\n */\n referralUrlBase?: string;\n\n /**\n * Path to append to base URL for referral links.\n * @default \"/\"\n */\n referralPath?: string;\n}\n\n/**\n * Default configuration values\n */\nexport const DEFAULT_REFERRAL_CONFIG: Required<ReferralConfig> = {\n enabled: false,\n cookieName: \"referral_code\",\n cookieDays: 30,\n urlParamName: \"ref\",\n referralUrlBase: \"\",\n referralPath: \"/\",\n};\n\n// Private storage for configuration\nlet _referralConfig: Required<ReferralConfig> = { ...DEFAULT_REFERRAL_CONFIG };\n\n/**\n * Configure referral feature settings.\n * Call this at app startup to enable and configure referral functionality.\n *\n * @example\n * ```typescript\n * import { configureReferral } from \"@carlonicora/nextjs-jsonapi\";\n *\n * configureReferral({\n * enabled: process.env.NEXT_PUBLIC_REFERRAL_ENABLED === 'true',\n * cookieDays: 30,\n * });\n * ```\n */\nexport function configureReferral(config: ReferralConfig): void {\n _referralConfig = { ...DEFAULT_REFERRAL_CONFIG, ...config };\n}\n\n/**\n * Get the current referral configuration.\n * @internal\n */\nexport function getReferralConfig(): Required<ReferralConfig> {\n return _referralConfig;\n}\n\n/**\n * Check if referral feature is enabled.\n */\nexport function isReferralEnabled(): boolean {\n return _referralConfig.enabled;\n}\n","export type SignupSource = {\n sourceRef?: string;\n sourceUtmSource?: string;\n sourceUtmMedium?: string;\n sourceUtmCampaign?: string;\n sourceReferrer?: string;\n sourceLandingPath?: string;\n};\n\nexport const SIGNUP_SOURCE_COOKIE = \"signup_source\";\nexport const SIGNUP_SOURCE_COOKIE_MAX_AGE = 2592000;\n\n/** The six source fields, in display order. */\nexport const SIGNUP_SOURCE_FIELDS: readonly (keyof SignupSource)[] = [\n \"sourceRef\",\n \"sourceUtmSource\",\n \"sourceUtmMedium\",\n \"sourceUtmCampaign\",\n \"sourceReferrer\",\n \"sourceLandingPath\",\n];\n\nconst SIGNUP_SOURCE_MAX_LENGTH = 200;\n\n// First touch for the current page session. Survives client navigations, lost on a full reload.\nlet memorySource: SignupSource | undefined;\n\nfunction clean(value: unknown): string | undefined {\n if (typeof value !== \"string\") return undefined;\n const trimmed = value.trim();\n if (!trimmed) return undefined;\n return trimmed.slice(0, SIGNUP_SOURCE_MAX_LENGTH);\n}\n\nfunction sanitise(input: unknown): SignupSource | undefined {\n if (!input || typeof input !== \"object\") return undefined;\n const result: SignupSource = {};\n for (const field of SIGNUP_SOURCE_FIELDS) {\n const value = clean((input as Record<string, unknown>)[field]);\n if (value !== undefined) result[field] = value;\n }\n return Object.keys(result).length > 0 ? result : undefined;\n}\n\n/**\n * Pure. Reads ref and utm_source/medium/campaign from the URL, the referrer host when it is not ownHost,\n * and the landing path. Returns undefined for a direct visit (no ref, no UTM, no external referrer).\n */\nexport function readSignupSourceFromLocation(params: {\n url: string;\n referrer: string;\n ownHost: string;\n}): SignupSource | undefined {\n let url: URL;\n try {\n url = new URL(params.url);\n } catch {\n return undefined;\n }\n\n const sourceRef = clean(url.searchParams.get(\"ref\"));\n const sourceUtmSource = clean(url.searchParams.get(\"utm_source\"));\n const sourceUtmMedium = clean(url.searchParams.get(\"utm_medium\"));\n const sourceUtmCampaign = clean(url.searchParams.get(\"utm_campaign\"));\n\n let sourceReferrer: string | undefined;\n if (params.referrer) {\n try {\n const referrerHost = new URL(params.referrer).host;\n if (referrerHost && referrerHost !== params.ownHost) sourceReferrer = clean(referrerHost);\n } catch {\n sourceReferrer = undefined;\n }\n }\n\n if (!sourceRef && !sourceUtmSource && !sourceUtmMedium && !sourceUtmCampaign && !sourceReferrer) return undefined;\n\n return sanitise({\n sourceRef,\n sourceUtmSource,\n sourceUtmMedium,\n sourceUtmCampaign,\n sourceReferrer,\n sourceLandingPath: url.pathname,\n });\n}\n\nfunction readSignupSourceCookie(): SignupSource | undefined {\n if (typeof document === \"undefined\") return undefined;\n const cookies = document.cookie ? document.cookie.split(\"; \") : [];\n for (const cookie of cookies) {\n const separator = cookie.indexOf(\"=\");\n if (separator === -1) continue;\n if (cookie.slice(0, separator) !== SIGNUP_SOURCE_COOKIE) continue;\n const value = cookie.slice(separator + 1);\n if (!value) return undefined;\n try {\n return sanitise(JSON.parse(decodeURIComponent(value)));\n } catch {\n return undefined;\n }\n }\n return undefined;\n}\n\nfunction writeSignupSourceCookie(source: SignupSource): void {\n document.cookie = `${SIGNUP_SOURCE_COOKIE}=${encodeURIComponent(JSON.stringify(source))}; path=/; max-age=${SIGNUP_SOURCE_COOKIE_MAX_AGE}; SameSite=Lax`;\n}\n\n/**\n * First touch: an existing in-memory value or cookie is never overwritten.\n * Writes the cookie only when persist is true and no cookie exists yet.\n */\nexport function captureSignupSource(params: { persist: boolean }): void {\n if (typeof window === \"undefined\" || typeof document === \"undefined\") return;\n\n const existingCookie = readSignupSourceCookie();\n\n if (!memorySource) {\n memorySource =\n existingCookie ??\n readSignupSourceFromLocation({\n url: window.location.href,\n referrer: document.referrer,\n ownHost: window.location.host,\n });\n }\n\n if (params.persist && !existingCookie && memorySource) writeSignupSourceCookie(memorySource);\n}\n\n/** The in-memory value, else the cookie value, else undefined. */\nexport function getSignupSource(): SignupSource | undefined {\n return memorySource ?? readSignupSourceCookie();\n}\n","export const COMPANY_ADMINISTRATOR_ROLE_ID = \"2e1eee00-6cba-4506-9059-ccd24e4ea5b0\";\n\nexport type PermissionValue = boolean | string;\n\nexport type ActionType = \"read\" | \"create\" | \"update\" | \"delete\";\n\nexport const ACTION_TYPES: ActionType[] = [\"read\", \"create\", \"update\", \"delete\"];\n\n/** The permissions object shape used by both Module and PermissionMapping entities */\nexport type PermissionsMap = {\n create?: PermissionValue;\n read?: PermissionValue;\n update?: PermissionValue;\n delete?: PermissionValue;\n};\n\n/**\n * Declarative-RBAC matrix types.\n *\n * Mirror of the library types defined in\n * `packages/nestjs-neo4jsonapi/src/foundations/rbac/dsl/types.ts`.\n * Frontend does not import from backend, so the shape is redefined here.\n *\n * A `PermToken` represents a single permission entry:\n * - `scope: true` → unconditional (e.g. full read of the module)\n * - `scope: false` → nothing (rarely used, mostly a placeholder)\n * - `scope: \"path\"` → scoped by relationship path (e.g. \"orders.account\")\n */\nexport type PermToken = { action: string; scope: boolean | string };\n\n/**\n * A per-module block of the matrix. Always has a `default` row (permissions\n * granted to every role). Additional keys are role IDs → role-specific\n * permission tokens that are unioned with `default` to produce the effective\n * permissions for that role in that module.\n */\nexport type RbacModuleBlock = { default: PermToken[] } & Record<string, PermToken[]>;\n\n/**\n * The full RBAC matrix as served by the dev endpoint `GET /_dev/rbac/matrix`.\n * Keys are module IDs; values are module blocks.\n */\nexport type RbacMatrix = Record<string, RbacModuleBlock>;\n","import { AbstractService, EndpointCreator, HttpMethod, Modules } from \"../../../core\";\nimport type { RbacMatrixModel } from \"./RbacMatrixModel\";\nimport type { RbacMatrix } from \"./RbacTypes\";\n\n/**\n * RbacService — fetches RBAC configuration for the admin UI.\n *\n * Declarative-matrix methods (`fetchMatrix`, `saveMatrix`) talk to the\n * dev-only endpoints added in\n * `packages/nestjs-neo4jsonapi/.../rbac-dev.controller.ts`. The controller\n * speaks JSON:API (singleton resource with `type: \"rbac-matrix\"`, `id:\n * \"singleton\"`), so these methods go through the standard `callApi()`\n * pipeline like every other service in the codebase.\n *\n * The backend only registers these routes when `devMode` is enabled on\n * `RbacModule.register` (see `apps/api/src/features/features.modules.ts`).\n * In production the routes return 404; callers should guard with a dev-mode\n * check.\n */\nexport class RbacService extends AbstractService {\n /**\n * Fetch the current RBAC matrix plus each module's known BFS relationship\n * paths (used by the permission picker as scope suggestions).\n *\n * Dev-only endpoint — see class header.\n */\n static async fetchMatrix(): Promise<{\n matrix: RbacMatrix;\n modulePaths: Record<string, readonly string[]>;\n }> {\n const endpoint = new EndpointCreator({ endpoint: Modules.RbacMatrix }).generate();\n\n const model = await this.callApi<RbacMatrixModel>({\n type: Modules.RbacMatrix,\n method: HttpMethod.GET,\n endpoint,\n });\n\n return {\n matrix: model.matrix ?? {},\n modulePaths: model.modulePaths ?? {},\n };\n }\n\n /**\n * Persist a matrix back to the declarative `permissions.ts` file.\n *\n * The backend serializes the matrix to formatted TypeScript using the\n * provided `roleNames` / `moduleNames` lookup tables (so the emitted file\n * references `RoleId.X` / `ModuleId.X` rather than raw UUIDs) and writes\n * it to `outputPath` (absolute, or relative to the repo root).\n *\n * Dev-only endpoint — see class header.\n */\n static async saveMatrix(args: {\n matrix: RbacMatrix;\n roleNames: Record<string, string>;\n moduleNames: Record<string, string>;\n outputPath: string;\n }): Promise<{ bytesWritten: number; path: string }> {\n const endpoint = new EndpointCreator({ endpoint: Modules.RbacMatrix }).generate();\n\n const model = await this.callApi<RbacMatrixModel>({\n type: Modules.RbacMatrix,\n method: HttpMethod.PUT,\n endpoint,\n input: args,\n });\n\n return {\n bytesWritten: model.bytesWritten ?? 0,\n path: model.path ?? \"\",\n };\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -4,7 +4,7 @@ var _chunkG4JR3SFVjs = require('./chunk-G4JR3SFV.js');
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunk5XP5G45Bjs = require('./chunk-5XP5G45B.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
var _chunk7QVYU63Ejs = require('./chunk-7QVYU63E.js');
|
|
@@ -40,7 +40,7 @@ var ServerSession = class {
|
|
|
40
40
|
const headerStore = await _headers.headers.call(void 0, );
|
|
41
41
|
const token = _optionalChain([cookieStore, 'access', _ => _.get, 'call', _2 => _2("token"), 'optionalAccess', _3 => _3.value]) || void 0;
|
|
42
42
|
const roles = _optionalChain([cookieStore, 'access', _4 => _4.get, 'call', _5 => _5("roles"), 'optionalAccess', _6 => _6.value]);
|
|
43
|
-
const viewportCookie = _optionalChain([cookieStore, 'access', _7 => _7.get, 'call', _8 => _8(
|
|
43
|
+
const viewportCookie = _optionalChain([cookieStore, 'access', _7 => _7.get, 'call', _8 => _8(_chunk5XP5G45Bjs.VIEWPORT_COOKIE_NAME), 'optionalAccess', _9 => _9.value]);
|
|
44
44
|
return {
|
|
45
45
|
isLogged: !!token,
|
|
46
46
|
isAdministrator: !!roles && roles.includes(_chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator),
|
|
@@ -89,7 +89,7 @@ var ServerSession = class {
|
|
|
89
89
|
if (!rawModules) return false;
|
|
90
90
|
const modules = JSON.parse(_pako.ungzip.call(void 0, Buffer.from(rawModules, "base64"), { toText: true }));
|
|
91
91
|
const selectedModule = modules.find((module) => module.id === params.module.moduleId);
|
|
92
|
-
return
|
|
92
|
+
return _chunk5XP5G45Bjs.checkPermissionsFromServer.call(void 0, {
|
|
93
93
|
module: params.module,
|
|
94
94
|
action: params.action,
|
|
95
95
|
data: params.data,
|
|
@@ -139,4 +139,4 @@ _chunk7QVYU63Ejs.__name.call(void 0, readBuildId, "readBuildId");
|
|
|
139
139
|
|
|
140
140
|
|
|
141
141
|
exports.invalidateCacheTag = invalidateCacheTag; exports.invalidateCacheTags = invalidateCacheTags; exports.updateCacheTag = updateCacheTag; exports.ServerSession = ServerSession; exports.buildOfflineManifest = buildOfflineManifest;
|
|
142
|
-
//# sourceMappingURL=chunk-
|
|
142
|
+
//# sourceMappingURL=chunk-NQL2NDKH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-F3EVYBMA.js","../src/server/cache.ts","../src/server/ServerSession.ts","../src/offline/server/build-offline-manifest.ts"],"names":[],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-F3EVYBMA.js","sourcesContent":[null,"// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag, updateTag } from \"next/cache\";\n\nimport type { CacheProfile } from \"./cacheProfiles\";\n\nexport { CACHE_PROFILES, type CacheProfile } from \"./cacheProfiles\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * With `\"max\"` the tagged entries are marked stale and served stale-while-revalidate\n * (a one-year window): the next request still gets the old data while fresh data loads\n * in the background. It is not an immediate invalidation. A Server Action that must\n * read its own write uses `updateCacheTag` instead.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile whose `expire` bounds how long stale data may be served (defaults to \"max\")\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, see `invalidateCacheTag` (defaults to \"max\", stale-while-revalidate)\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\n/**\n * Expire a cache tag immediately, so the same request reads fresh data (read-your-own-writes).\n * Wraps `updateTag`, which works in Server Actions only. Route Handlers use `invalidateCacheTag`.\n *\n * @param tag - The cache tag to expire\n */\nexport async function updateCacheTag(tag: string): Promise<void> {\n updateTag(tag);\n}\n","import { cookies, headers } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { userAgent } from \"next/server\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\nimport { getRoleId } from \"../roles/config\";\nimport { VIEWPORT_COOKIE_NAME } from \"../utils/use-mobile\";\n\nexport interface SessionSnapshot {\n isLogged: boolean;\n isAdministrator: boolean;\n token?: string;\n sidebarOpen: boolean;\n isMobile: boolean;\n /** The request's raw `Accept-Language` header; the date locale is resolved from it on the client. */\n acceptLanguage?: string;\n}\n\nexport class ServerSession {\n static async read(): Promise<SessionSnapshot> {\n const cookieStore = await cookies();\n const headerStore = await headers();\n\n const token = cookieStore.get(\"token\")?.value || undefined;\n const roles = cookieStore.get(\"roles\")?.value;\n const viewportCookie = cookieStore.get(VIEWPORT_COOKIE_NAME)?.value;\n\n return {\n isLogged: !!token,\n isAdministrator: !!roles && roles.includes(getRoleId().Administrator),\n token,\n sidebarOpen: cookieStore.get(\"sidebar_state\")?.value !== \"false\",\n isMobile: viewportCookie ? viewportCookie === \"1\" : userAgent({ headers: headerStore }).device.type === \"mobile\",\n acceptLanguage: headerStore.get(\"accept-language\") ?? undefined,\n };\n }\n\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","import { createHash } from \"node:crypto\";\nimport { readdir, readFile } from \"node:fs/promises\";\nimport path from \"node:path\";\n\nexport type OfflineManifest = { buildId: string; assets: string[] };\n\nasync function listFiles(dir: string): Promise<string[]> {\n const entries = await readdir(dir, { withFileTypes: true });\n const files: string[] = [];\n for (const entry of entries) {\n const full = path.join(dir, entry.name);\n if (entry.isDirectory()) files.push(...(await listFiles(full)));\n else if (entry.isFile()) files.push(full);\n }\n return files;\n}\n\n/**\n * Describes the running build for the service worker's offline shell precache\n * (`/offline-manifest.json`): the build id from `<distDir>/BUILD_ID` and every\n * file under `<distDir>/static`, as the `/_next/static/...` URL Next serves it at.\n * `next dev` writes no BUILD_ID (its folder is `.next/dev`): the id is then `dev-` plus a hash\n * of the asset list. Dev chunk names do NOT carry content hashes (an edit rewrites a chunk under\n * the same name), so the id changes only when files appear or disappear; the service worker\n * therefore serves `/_next/static/` network first for a `dev-` build (pwa/sw.js).\n * `distDir` must be the value the app's next.config uses. `extraAssets` are further same-origin\n * URLs the shell needs with no network (the SQLite files the device worker loads).\n */\nexport async function buildOfflineManifest(params: {\n distDir: string;\n extraAssets?: string[];\n}): Promise<OfflineManifest> {\n const staticDir = path.join(params.distDir, \"static\");\n const files = await listFiles(staticDir);\n const assets = files\n .map((file) => `/_next/static/${path.relative(staticDir, file).split(path.sep).join(\"/\")}`)\n .concat(params.extraAssets ?? [])\n .sort();\n const buildId = await readBuildId(params.distDir, assets);\n return { buildId, assets };\n}\n\nasync function readBuildId(distDir: string, assets: string[]): Promise<string> {\n try {\n return (await readFile(path.join(distDir, \"BUILD_ID\"), \"utf8\")).trim();\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code !== \"ENOENT\") throw error;\n return `dev-${createHash(\"sha256\").update(assets.join(\"\\n\")).digest(\"hex\").slice(0, 16)}`;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-NQL2NDKH.js","../src/server/cache.ts","../src/server/ServerSession.ts","../src/offline/server/build-offline-manifest.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACTA,mCAAyC;AAkBzC,MAAA,SAAsB,kBAAA,CAAmB,GAAA,EAAa,QAAA,EAAwB,KAAA,EAAsB;AAClG,EAAA,kCAAA,GAAc,EAAK,OAAO,CAAA;AAC5B;AAFsB,qCAAA,kBAAA,EAAA,oBAAA,CAAA;AAUtB,MAAA,SAAsB,mBAAA,CAAoB,IAAA,EAAgB,QAAA,EAAwB,KAAA,EAAsB;AACtG,EAAA,IAAA,CAAA,MAAW,IAAA,GAAO,IAAA,EAAM;AACtB,IAAA,kCAAA,GAAc,EAAK,OAAO,CAAA;AAAA,EAC5B;AACF;AAJsB,qCAAA,mBAAA,EAAA,qBAAA,CAAA;AAYtB,MAAA,SAAsB,cAAA,CAAe,GAAA,EAA4B;AAC/D,EAAA,8BAAA,GAAa,CAAA;AACf;AAFsB,qCAAA,cAAA,EAAA,gBAAA,CAAA;ADftB;AACA;AE5BA,uCAAiC;AACjC,6CAAyB;AACzB,qCAA0B;AAC1B,4BAAuB;AAehB,IAAM,cAAA,EAAN,MAAoB;AAAA,EAlB3B,OAkB2B;AAAA,IAAA,qCAAA,IAAA,EAAA,eAAA,CAAA;AAAA,EAAA;AAAA,EACzB,OAAA,MAAa,IAAA,CAAA,EAAiC;AAC5C,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAElC,IAAA,MAAM,MAAA,kBAAQ,WAAA,mBAAY,GAAA,mBAAI,OAAO,CAAA,6BAAG,QAAA,GAAS,KAAA,CAAA;AACjD,IAAA,MAAM,MAAA,kBAAQ,WAAA,qBAAY,GAAA,mBAAI,OAAO,CAAA,6BAAG,OAAA;AACxC,IAAA,MAAM,eAAA,kBAAiB,WAAA,qBAAY,GAAA,mBAAI,qCAAoB,CAAA,6BAAG,OAAA;AAE9D,IAAA,OAAO;AAAA,MACL,QAAA,EAAU,CAAC,CAAC,KAAA;AAAA,MACZ,eAAA,EAAiB,CAAC,CAAC,MAAA,GAAS,KAAA,CAAM,QAAA,CAAS,wCAAA,CAAU,CAAE,aAAa,CAAA;AAAA,MACpE,KAAA;AAAA,MACA,WAAA,kBAAa,WAAA,uBAAY,GAAA,qBAAI,eAAe,CAAA,+BAAG,QAAA,IAAU,OAAA;AAAA,MACzD,QAAA,EAAU,eAAA,EAAiB,eAAA,IAAmB,IAAA,EAAM,+BAAA,EAAY,OAAA,EAAS,YAAY,CAAC,CAAA,CAAE,MAAA,CAAO,KAAA,IAAS,QAAA;AAAA,MACxG,cAAA,mBAAgB,WAAA,CAAY,GAAA,CAAI,iBAAiB,CAAA,UAAK,KAAA;AAAA,IACxD,CAAA;AAAA,EACF;AAAA,EAEA,OAAA,MAAa,QAAA,CAAA,EAAW;AACtB,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,MAAM,MAAA,EAAQ,WAAA,CAAY,GAAA,CAAI,OAAO,CAAA;AAErC,IAAA,GAAA,CAAI,CAAC,MAAA,GAAS,CAAC,KAAA,CAAM,KAAA,EAAO,OAAO,KAAA;AACnC,IAAA,OAAO,IAAA;AAAA,EACT;AAAA,EAEA,OAAA,MAAa,SAAA,CAAA,EAAY;AACvB,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,wCAAO,WAAA,uBAAY,GAAA,qBAAI,WAAW,CAAA,+BAAG,OAAA,UAAS,IAAA;AAAA,EAChD;AAAA,EAEA,OAAA,MAAa,MAAA,CAAA,EAAS;AACpB,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,wCAAO,WAAA,uBAAY,GAAA,qBAAI,QAAQ,CAAA,+BAAG,OAAA,UAAS,IAAA;AAAA,EAC7C;AAAA,EAEA,OAAA,MAAa,eAAA,CAAiD,MAAA,EAAmD;AAC/G,IAAA,GAAA,CAAI,CAAE,MAAM,IAAA,CAAK,qBAAA,CAAsB,MAAM,CAAA,EAAI,kCAAA,CAAS,IAAA,CAAM,CAAA;AAAA,EAClE;AAAA,EAEA,OAAA,MAAa,OAAA,CAAQ,MAAA,EAAkC;AACrD,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,MAAM,MAAA,kBAAQ,WAAA,uBAAY,GAAA,qBAAI,OAAO,CAAA,+BAAG,OAAA;AAExC,IAAA,GAAA,CAAI,CAAC,MAAA,GAAS,CAAC,KAAA,CAAM,QAAA,CAAS,MAAM,CAAA,EAAG,OAAO,KAAA;AAE9C,IAAA,OAAO,IAAA;AAAA,EACT;AAAA,EAEA,OAAA,MAAa,UAAA,CAAW,SAAA,EAAqC;AAC3D,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAClC,IAAA,MAAM,SAAA,kBAAW,WAAA,uBAAY,GAAA,qBAAI,UAAU,CAAA,+BAAG,OAAA;AAE9C,IAAA,GAAA,CAAI,CAAC,SAAA,GAAY,CAAC,QAAA,CAAS,QAAA,CAAS,SAAS,CAAA,EAAG,OAAO,KAAA;AAEvD,IAAA,OAAO,IAAA;AAAA,EACT;AAAA,EAEA,OAAA,MAAa,qBAAA,CAAuD,MAAA,EAI/C;AACnB,IAAA,MAAM,YAAA,EAAc,MAAM,8BAAA,CAAQ;AAElC,IAAA,GAAA,CAAI,MAAA,CAAO,MAAA,CAAO,OAAA,EAAS;AACzB,MAAA,MAAM,SAAA,kBAAW,WAAA,uBAAY,GAAA,qBAAI,UAAU,CAAA,+BAAG,OAAA;AAE9C,MAAA,GAAA,CAAI,SAAA,GAAY,CAAC,QAAA,CAAS,QAAA,CAAS,MAAA,CAAO,MAAA,CAAO,OAAO,CAAA,EAAG,OAAO,KAAA;AAAA,IACpE;AAEA,IAAA,MAAM,WAAA,kBAAa,WAAA,uBAAY,GAAA,qBAAI,SAAS,CAAA,+BAAG,OAAA;AAC/C,IAAA,GAAA,CAAI,CAAC,UAAA,EAAY,OAAO,KAAA;AAExB,IAAA,MAAM,QAAA,EAQA,IAAA,CAAK,KAAA,CAAM,0BAAA,MAAO,CAAO,IAAA,CAAK,UAAA,EAAY,QAAQ,CAAA,EAAG,EAAE,MAAA,EAAQ,KAAK,CAAC,CAAC,CAAA;AAE5E,IAAA,MAAM,eAAA,EAAiB,OAAA,CAAQ,IAAA,CAAK,CAAC,MAAA,EAAA,GAAW,MAAA,CAAO,GAAA,IAAO,MAAA,CAAO,MAAA,CAAO,QAAQ,CAAA;AAEpF,IAAA,OAAO,yDAAA;AAA2B,MAChC,MAAA,EAAQ,MAAA,CAAO,MAAA;AAAA,MACf,MAAA,EAAQ,MAAA,CAAO,MAAA;AAAA,MACf,IAAA,EAAM,MAAA,CAAO,IAAA;AAAA,MACb,MAAA,EAAQ,MAAM,IAAA,CAAK,MAAA,CAAO,CAAA;AAAA,MAC1B;AAAA,IACF,CAAC,CAAA;AAAA,EAWH;AACF,CAAA;AFvBA;AACA;AGrGA,gCAA2B;AAC3B,uCAAkC;AAClC,wEAAiB;AAIjB,MAAA,SAAe,SAAA,CAAU,GAAA,EAAgC;AACvD,EAAA,MAAM,QAAA,EAAU,MAAM,+BAAA,GAAQ,EAAK,EAAE,aAAA,EAAe,KAAK,CAAC,CAAA;AAC1D,EAAA,MAAM,MAAA,EAAkB,CAAC,CAAA;AACzB,EAAA,IAAA,CAAA,MAAW,MAAA,GAAS,OAAA,EAAS;AAC3B,IAAA,MAAM,KAAA,EAAO,cAAA,CAAK,IAAA,CAAK,GAAA,EAAK,KAAA,CAAM,IAAI,CAAA;AACtC,IAAA,GAAA,CAAI,KAAA,CAAM,WAAA,CAAY,CAAA,EAAG,KAAA,CAAM,IAAA,CAAK,GAAI,MAAM,SAAA,CAAU,IAAI,CAAE,CAAA;AAAA,IAAA,KAAA,GAAA,CACrD,KAAA,CAAM,MAAA,CAAO,CAAA,EAAG,KAAA,CAAM,IAAA,CAAK,IAAI,CAAA;AAAA,EAC1C;AACA,EAAA,OAAO,KAAA;AACT;AATe,qCAAA,SAAA,EAAA,WAAA,CAAA;AAsBf,MAAA,SAAsB,oBAAA,CAAqB,MAAA,EAGd;AAC3B,EAAA,MAAM,UAAA,EAAY,cAAA,CAAK,IAAA,CAAK,MAAA,CAAO,OAAA,EAAS,QAAQ,CAAA;AACpD,EAAA,MAAM,MAAA,EAAQ,MAAM,SAAA,CAAU,SAAS,CAAA;AACvC,EAAA,MAAM,OAAA,EAAS,KAAA,CACZ,GAAA,CAAI,CAAC,IAAA,EAAA,GAAS,CAAA,cAAA,EAAiB,cAAA,CAAK,QAAA,CAAS,SAAA,EAAW,IAAI,CAAA,CAAE,KAAA,CAAM,cAAA,CAAK,GAAG,CAAA,CAAE,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAGlC,EAAA;AAC/B,EAAA;AAC3B;AAZsB;AAcyD;AACzE,EAAA;AACmE,IAAA;AACvD,EAAA;AACgD,IAAA;AACyB,IAAA;AACzF,EAAA;AACF;AAPe;AH2FgG;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-NQL2NDKH.js","sourcesContent":[null,"// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag, updateTag } from \"next/cache\";\n\nimport type { CacheProfile } from \"./cacheProfiles\";\n\nexport { CACHE_PROFILES, type CacheProfile } from \"./cacheProfiles\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * With `\"max\"` the tagged entries are marked stale and served stale-while-revalidate\n * (a one-year window): the next request still gets the old data while fresh data loads\n * in the background. It is not an immediate invalidation. A Server Action that must\n * read its own write uses `updateCacheTag` instead.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile whose `expire` bounds how long stale data may be served (defaults to \"max\")\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, see `invalidateCacheTag` (defaults to \"max\", stale-while-revalidate)\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\n/**\n * Expire a cache tag immediately, so the same request reads fresh data (read-your-own-writes).\n * Wraps `updateTag`, which works in Server Actions only. Route Handlers use `invalidateCacheTag`.\n *\n * @param tag - The cache tag to expire\n */\nexport async function updateCacheTag(tag: string): Promise<void> {\n updateTag(tag);\n}\n","import { cookies, headers } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { userAgent } from \"next/server\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\nimport { getRoleId } from \"../roles/config\";\nimport { VIEWPORT_COOKIE_NAME } from \"../utils/use-mobile\";\n\nexport interface SessionSnapshot {\n isLogged: boolean;\n isAdministrator: boolean;\n token?: string;\n sidebarOpen: boolean;\n isMobile: boolean;\n /** The request's raw `Accept-Language` header; the date locale is resolved from it on the client. */\n acceptLanguage?: string;\n}\n\nexport class ServerSession {\n static async read(): Promise<SessionSnapshot> {\n const cookieStore = await cookies();\n const headerStore = await headers();\n\n const token = cookieStore.get(\"token\")?.value || undefined;\n const roles = cookieStore.get(\"roles\")?.value;\n const viewportCookie = cookieStore.get(VIEWPORT_COOKIE_NAME)?.value;\n\n return {\n isLogged: !!token,\n isAdministrator: !!roles && roles.includes(getRoleId().Administrator),\n token,\n sidebarOpen: cookieStore.get(\"sidebar_state\")?.value !== \"false\",\n isMobile: viewportCookie ? viewportCookie === \"1\" : userAgent({ headers: headerStore }).device.type === \"mobile\",\n acceptLanguage: headerStore.get(\"accept-language\") ?? undefined,\n };\n }\n\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","import { createHash } from \"node:crypto\";\nimport { readdir, readFile } from \"node:fs/promises\";\nimport path from \"node:path\";\n\nexport type OfflineManifest = { buildId: string; assets: string[] };\n\nasync function listFiles(dir: string): Promise<string[]> {\n const entries = await readdir(dir, { withFileTypes: true });\n const files: string[] = [];\n for (const entry of entries) {\n const full = path.join(dir, entry.name);\n if (entry.isDirectory()) files.push(...(await listFiles(full)));\n else if (entry.isFile()) files.push(full);\n }\n return files;\n}\n\n/**\n * Describes the running build for the service worker's offline shell precache\n * (`/offline-manifest.json`): the build id from `<distDir>/BUILD_ID` and every\n * file under `<distDir>/static`, as the `/_next/static/...` URL Next serves it at.\n * `next dev` writes no BUILD_ID (its folder is `.next/dev`): the id is then `dev-` plus a hash\n * of the asset list. Dev chunk names do NOT carry content hashes (an edit rewrites a chunk under\n * the same name), so the id changes only when files appear or disappear; the service worker\n * therefore serves `/_next/static/` network first for a `dev-` build (pwa/sw.js).\n * `distDir` must be the value the app's next.config uses. `extraAssets` are further same-origin\n * URLs the shell needs with no network (the SQLite files the device worker loads).\n */\nexport async function buildOfflineManifest(params: {\n distDir: string;\n extraAssets?: string[];\n}): Promise<OfflineManifest> {\n const staticDir = path.join(params.distDir, \"static\");\n const files = await listFiles(staticDir);\n const assets = files\n .map((file) => `/_next/static/${path.relative(staticDir, file).split(path.sep).join(\"/\")}`)\n .concat(params.extraAssets ?? [])\n .sort();\n const buildId = await readBuildId(params.distDir, assets);\n return { buildId, assets };\n}\n\nasync function readBuildId(distDir: string, assets: string[]): Promise<string> {\n try {\n return (await readFile(path.join(distDir, \"BUILD_ID\"), \"utf8\")).trim();\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code !== \"ENOENT\") throw error;\n return `dev-${createHash(\"sha256\").update(assets.join(\"\\n\")).digest(\"hex\").slice(0, 16)}`;\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunk5XP5G45Bjs = require('./chunk-5XP5G45B.js');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
@@ -88,12 +88,14 @@ var _useGoogleAuth = false;
|
|
|
88
88
|
var _useInternalAuth = true;
|
|
89
89
|
var _allowRegistration = true;
|
|
90
90
|
var _registrationMode = "open";
|
|
91
|
+
var _requireCompanyName = true;
|
|
91
92
|
function configureLogin(params) {
|
|
92
93
|
_useDiscordAuth = !!params.discordClientId;
|
|
93
94
|
_useGoogleAuth = !!params.googleClientId;
|
|
94
95
|
_useInternalAuth = _nullishCoalesce(params.useInternalAuth, () => ( true));
|
|
95
96
|
_allowRegistration = _nullishCoalesce(params.allowRegistration, () => ( true));
|
|
96
97
|
_registrationMode = _nullishCoalesce(params.registrationMode, () => ( "open"));
|
|
98
|
+
_requireCompanyName = _nullishCoalesce(params.requireCompanyName, () => ( true));
|
|
97
99
|
}
|
|
98
100
|
_chunk7QVYU63Ejs.__name.call(void 0, configureLogin, "configureLogin");
|
|
99
101
|
function isDiscordAuthEnabled() {
|
|
@@ -116,6 +118,10 @@ function getRegistrationMode() {
|
|
|
116
118
|
return _registrationMode;
|
|
117
119
|
}
|
|
118
120
|
_chunk7QVYU63Ejs.__name.call(void 0, getRegistrationMode, "getRegistrationMode");
|
|
121
|
+
function isCompanyNameRequired() {
|
|
122
|
+
return _requireCompanyName;
|
|
123
|
+
}
|
|
124
|
+
_chunk7QVYU63Ejs.__name.call(void 0, isCompanyNameRequired, "isCompanyNameRequired");
|
|
119
125
|
|
|
120
126
|
// src/features/waitlist/config/waitlist.config.ts
|
|
121
127
|
var _waitlistConfig = {};
|
|
@@ -266,7 +272,7 @@ var COMPANY_ADMINISTRATOR_ROLE_ID = "2e1eee00-6cba-4506-9059-ccd24e4ea5b0";
|
|
|
266
272
|
var ACTION_TYPES = ["read", "create", "update", "delete"];
|
|
267
273
|
|
|
268
274
|
// src/features/rbac/data/RbacService.ts
|
|
269
|
-
var RbacService = class extends
|
|
275
|
+
var RbacService = class extends _chunk5XP5G45Bjs.AbstractService {
|
|
270
276
|
static {
|
|
271
277
|
_chunk7QVYU63Ejs.__name.call(void 0, this, "RbacService");
|
|
272
278
|
}
|
|
@@ -343,5 +349,6 @@ var RbacService = class extends _chunk77JC2UCFjs.AbstractService {
|
|
|
343
349
|
|
|
344
350
|
|
|
345
351
|
|
|
346
|
-
|
|
347
|
-
|
|
352
|
+
|
|
353
|
+
exports._getStaticHelpContent = _getStaticHelpContent; exports.configureJsonApi = configureJsonApi; exports.configureClientConfig = configureClientConfig; exports.getApiUrl = getApiUrl; exports.getPublicApiUrl = getPublicApiUrl; exports.getAppUrl = getAppUrl; exports.getTrackablePages = getTrackablePages; exports.getStripePublishableKey = getStripePublishableKey; exports.configureLogin = configureLogin; exports.isDiscordAuthEnabled = isDiscordAuthEnabled; exports.isGoogleAuthEnabled = isGoogleAuthEnabled; exports.isInternalAuthEnabled = isInternalAuthEnabled; exports.isRegistrationAllowed = isRegistrationAllowed; exports.getRegistrationMode = getRegistrationMode; exports.isCompanyNameRequired = isCompanyNameRequired; exports.configureWaitlist = configureWaitlist; exports.getWaitlistConfig = getWaitlistConfig; exports.useWaitlistText = useWaitlistText; exports.configureReferral = configureReferral; exports.getReferralConfig = getReferralConfig; exports.isReferralEnabled = isReferralEnabled; exports.SIGNUP_SOURCE_COOKIE = SIGNUP_SOURCE_COOKIE; exports.SIGNUP_SOURCE_COOKIE_MAX_AGE = SIGNUP_SOURCE_COOKIE_MAX_AGE; exports.SIGNUP_SOURCE_FIELDS = SIGNUP_SOURCE_FIELDS; exports.readSignupSourceFromLocation = readSignupSourceFromLocation; exports.captureSignupSource = captureSignupSource; exports.getSignupSource = getSignupSource; exports.COMPANY_ADMINISTRATOR_ROLE_ID = COMPANY_ADMINISTRATOR_ROLE_ID; exports.ACTION_TYPES = ACTION_TYPES; exports.RbacService = RbacService;
|
|
354
|
+
//# sourceMappingURL=chunk-Q5SMFSE4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-Q5SMFSE4.js","../src/core/registry/helpStore.ts","../src/client/config.ts","../src/login/config.ts","../src/features/waitlist/config/waitlist.config.ts","../src/features/referral/config.ts","../src/features/signup-source/signup-source.ts","../src/features/rbac/data/RbacTypes.ts","../src/features/rbac/data/RbacService.ts"],"names":[],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-Q5SMFSE4.js","sourcesContent":[null,"/**\n * Centralized help-content store accessible from client and server contexts.\n * Uses a globalThis Symbol key to persist across HMR/Turbopack reloads and to\n * bridge between the client-side `configureJsonApi` (in `client/config.ts`)\n * and the HelpProvider context. Holds the brand-only HelpContentConfig.\n *\n * NO external dependencies to avoid circular imports.\n *\n * Pattern mirrors `bootstrapStore.ts`.\n */\n\nconst HELP_CONTENT_KEY = Symbol.for(\"nextjs-jsonapi:helpContent\");\n\nconst globalStore = globalThis as unknown as {\n [HELP_CONTENT_KEY]?: unknown | null;\n};\n\nif (globalStore[HELP_CONTENT_KEY] === undefined) {\n globalStore[HELP_CONTENT_KEY] = null;\n}\n\nexport function _setStaticHelpContent(cfg: unknown | null): void {\n globalStore[HELP_CONTENT_KEY] = cfg;\n}\n\nexport function _getStaticHelpContent<T = unknown>(): T | null {\n return (globalStore[HELP_CONTENT_KEY] as T | null) ?? null;\n}\n","\"use client\";\n\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { ENV } from \"../core/env\";\nimport { setBootstrapper } from \"../core/registry/bootstrapStore\";\nimport { _setStaticHelpContent } from \"../core/registry/helpStore\";\nimport type { HelpContentConfig } from \"../features/help/interfaces/help-content-config.interface\";\n\n// Config storage for client-side contexts\nlet _clientConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n stripePublishableKey?: string;\n} | null = null;\n\n/**\n * Configure the JSON:API client. This is the main configuration function.\n * This is typically called during app initialization.\n * @param config.helpContent - Optional help-content config (brand only). Forwarded to the help feature's globalThis-backed store; not stored on the client config.\n */\nexport function configureJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n stripePublishableKey?: string;\n helpContent?: HelpContentConfig;\n}): void {\n const { helpContent, ...rest } = config;\n _clientConfig = rest;\n if (helpContent) {\n _setStaticHelpContent(helpContent);\n }\n // Register and call bootstrapper to register all modules\n if (config.bootstrapper) {\n setBootstrapper(config.bootstrapper);\n config.bootstrapper();\n }\n}\n\n/**\n * Configure the client config. This is typically called during app initialization.\n * @deprecated Use configureJsonApi instead\n */\nexport function configureClientConfig(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n}): void {\n _clientConfig = config;\n}\n\n/**\n * Get the configured API URL.\n *\n * This may resolve to an internal/private host (e.g. a docker-network\n * hostname) when configured to do so for SSR fetches. Do NOT use this for\n * URLs that are rendered into HTML and followed by the browser — use\n * `getPublicApiUrl()` instead.\n */\nexport function getApiUrl(): string {\n if (_clientConfig?.apiUrl) {\n return _clientConfig.apiUrl;\n }\n return ENV.API_URL;\n}\n\n/**\n * Get the public-facing API URL.\n *\n * Always sourced from `NEXT_PUBLIC_API_URL` so it is identical on server\n * and client, and reachable from the user's browser. Use for any URL that\n * gets rendered into HTML the browser will navigate to (links, redirects,\n * OAuth hrefs).\n */\nexport function getPublicApiUrl(): string {\n return ENV.API_URL;\n}\n\n/**\n * Get the configured app URL.\n */\nexport function getAppUrl(): string {\n if (_clientConfig?.appUrl) {\n return _clientConfig.appUrl;\n }\n if (ENV.APP_URL_ALTERNATE) {\n return ENV.APP_URL_ALTERNATE;\n }\n if (typeof window !== \"undefined\") {\n return window.location.origin;\n }\n return \"\";\n}\n\n/**\n * Get the configured trackable pages.\n */\nexport function getTrackablePages(): ModuleWithPermissions[] {\n return _clientConfig?.trackablePages ?? [];\n}\n\n/**\n * Get the configured Stripe publishable key.\n */\nexport function getStripePublishableKey(): string | undefined {\n return _clientConfig?.stripePublishableKey;\n}\n","let _useDiscordAuth: boolean = false;\nlet _useGoogleAuth: boolean = false;\nlet _useInternalAuth: boolean = true;\nlet _allowRegistration: boolean = true;\nlet _registrationMode: \"open\" | \"closed\" | \"waitlist\" = \"open\";\nlet _requireCompanyName: boolean = true;\n\nexport type RegistrationMode = \"open\" | \"closed\" | \"waitlist\";\n\nexport interface LoginConfig {\n discordClientId?: string;\n googleClientId?: string;\n useInternalAuth?: boolean;\n allowRegistration?: boolean;\n registrationMode?: RegistrationMode;\n /** Show and require the company name on sign-up. Default `true`. */\n requireCompanyName?: boolean;\n}\n\nexport function configureLogin(params: LoginConfig): void {\n _useDiscordAuth = !!params.discordClientId;\n _useGoogleAuth = !!params.googleClientId;\n _useInternalAuth = params.useInternalAuth ?? true;\n _allowRegistration = params.allowRegistration ?? true;\n _registrationMode = params.registrationMode ?? \"open\";\n _requireCompanyName = params.requireCompanyName ?? true;\n}\n\nexport function isDiscordAuthEnabled(): boolean {\n return _useDiscordAuth;\n}\n\nexport function isGoogleAuthEnabled(): boolean {\n return _useGoogleAuth;\n}\n\nexport function isInternalAuthEnabled(): boolean {\n return _useInternalAuth;\n}\n\nexport function isRegistrationAllowed(): boolean {\n return _allowRegistration;\n}\n\nexport function getRegistrationMode(): RegistrationMode {\n return _registrationMode;\n}\n\nexport function isCompanyNameRequired(): boolean {\n return _requireCompanyName;\n}\n","import { useI18nTranslations } from \"../../../i18n\";\n\nexport type QuestionnaireFieldType = \"text\" | \"textarea\" | \"select\" | \"checkbox\";\n\nexport interface QuestionnaireOption {\n value: string;\n label: string;\n description?: string;\n}\n\nexport interface QuestionnaireField {\n id: string;\n type: QuestionnaireFieldType;\n label: string;\n description?: string;\n placeholder?: string;\n required?: boolean;\n options?: QuestionnaireOption[];\n}\n\nexport interface WaitlistConfig {\n questionnaire?: QuestionnaireField[];\n heroTitle?: string;\n heroSubtitle?: string;\n heroDescription?: string;\n benefits?: string[];\n /**\n * When true, every text above (hero title, subtitle, description, benefits and\n * the questionnaire's labels, descriptions, placeholders and option labels) is\n * a message key and renders through `t()`. Defaults to false: the strings\n * render as given.\n */\n translate?: boolean;\n}\n\nlet _waitlistConfig: WaitlistConfig = {};\n\nexport function configureWaitlist(config: WaitlistConfig): void {\n _waitlistConfig = config;\n}\n\nexport function getWaitlistConfig(): WaitlistConfig {\n return _waitlistConfig;\n}\n\n/**\n * Resolves a waitlist config text: `t(value)` when the config sets\n * `translate`, the value itself otherwise. Empty values stay undefined.\n */\nexport function useWaitlistText(): (value?: string) => string | undefined {\n const t = useI18nTranslations();\n const translate = getWaitlistConfig().translate === true;\n\n return (value?: string) => {\n if (!value) return undefined;\n return translate ? t(value) : value;\n };\n}\n","/**\n * Configuration interface for frontend referral feature.\n */\nexport interface ReferralConfig {\n /**\n * Whether the referral feature is enabled.\n * When false, components render nothing and hooks return null.\n * @default false\n */\n enabled?: boolean;\n\n /**\n * Name of the cookie used to store referral codes.\n * @default \"referral_code\"\n */\n cookieName?: string;\n\n /**\n * Number of days the referral cookie is valid.\n * @default 30\n */\n cookieDays?: number;\n\n /**\n * Query parameter name for referral code in URL.\n * @default \"ref\"\n */\n urlParamName?: string;\n\n /**\n * Base URL for referral links.\n * @default window.location.origin (client-side only)\n */\n referralUrlBase?: string;\n\n /**\n * Path to append to base URL for referral links.\n * @default \"/\"\n */\n referralPath?: string;\n}\n\n/**\n * Default configuration values\n */\nexport const DEFAULT_REFERRAL_CONFIG: Required<ReferralConfig> = {\n enabled: false,\n cookieName: \"referral_code\",\n cookieDays: 30,\n urlParamName: \"ref\",\n referralUrlBase: \"\",\n referralPath: \"/\",\n};\n\n// Private storage for configuration\nlet _referralConfig: Required<ReferralConfig> = { ...DEFAULT_REFERRAL_CONFIG };\n\n/**\n * Configure referral feature settings.\n * Call this at app startup to enable and configure referral functionality.\n *\n * @example\n * ```typescript\n * import { configureReferral } from \"@carlonicora/nextjs-jsonapi\";\n *\n * configureReferral({\n * enabled: process.env.NEXT_PUBLIC_REFERRAL_ENABLED === 'true',\n * cookieDays: 30,\n * });\n * ```\n */\nexport function configureReferral(config: ReferralConfig): void {\n _referralConfig = { ...DEFAULT_REFERRAL_CONFIG, ...config };\n}\n\n/**\n * Get the current referral configuration.\n * @internal\n */\nexport function getReferralConfig(): Required<ReferralConfig> {\n return _referralConfig;\n}\n\n/**\n * Check if referral feature is enabled.\n */\nexport function isReferralEnabled(): boolean {\n return _referralConfig.enabled;\n}\n","export type SignupSource = {\n sourceRef?: string;\n sourceUtmSource?: string;\n sourceUtmMedium?: string;\n sourceUtmCampaign?: string;\n sourceReferrer?: string;\n sourceLandingPath?: string;\n};\n\nexport const SIGNUP_SOURCE_COOKIE = \"signup_source\";\nexport const SIGNUP_SOURCE_COOKIE_MAX_AGE = 2592000;\n\n/** The six source fields, in display order. */\nexport const SIGNUP_SOURCE_FIELDS: readonly (keyof SignupSource)[] = [\n \"sourceRef\",\n \"sourceUtmSource\",\n \"sourceUtmMedium\",\n \"sourceUtmCampaign\",\n \"sourceReferrer\",\n \"sourceLandingPath\",\n];\n\nconst SIGNUP_SOURCE_MAX_LENGTH = 200;\n\n// First touch for the current page session. Survives client navigations, lost on a full reload.\nlet memorySource: SignupSource | undefined;\n\nfunction clean(value: unknown): string | undefined {\n if (typeof value !== \"string\") return undefined;\n const trimmed = value.trim();\n if (!trimmed) return undefined;\n return trimmed.slice(0, SIGNUP_SOURCE_MAX_LENGTH);\n}\n\nfunction sanitise(input: unknown): SignupSource | undefined {\n if (!input || typeof input !== \"object\") return undefined;\n const result: SignupSource = {};\n for (const field of SIGNUP_SOURCE_FIELDS) {\n const value = clean((input as Record<string, unknown>)[field]);\n if (value !== undefined) result[field] = value;\n }\n return Object.keys(result).length > 0 ? result : undefined;\n}\n\n/**\n * Pure. Reads ref and utm_source/medium/campaign from the URL, the referrer host when it is not ownHost,\n * and the landing path. Returns undefined for a direct visit (no ref, no UTM, no external referrer).\n */\nexport function readSignupSourceFromLocation(params: {\n url: string;\n referrer: string;\n ownHost: string;\n}): SignupSource | undefined {\n let url: URL;\n try {\n url = new URL(params.url);\n } catch {\n return undefined;\n }\n\n const sourceRef = clean(url.searchParams.get(\"ref\"));\n const sourceUtmSource = clean(url.searchParams.get(\"utm_source\"));\n const sourceUtmMedium = clean(url.searchParams.get(\"utm_medium\"));\n const sourceUtmCampaign = clean(url.searchParams.get(\"utm_campaign\"));\n\n let sourceReferrer: string | undefined;\n if (params.referrer) {\n try {\n const referrerHost = new URL(params.referrer).host;\n if (referrerHost && referrerHost !== params.ownHost) sourceReferrer = clean(referrerHost);\n } catch {\n sourceReferrer = undefined;\n }\n }\n\n if (!sourceRef && !sourceUtmSource && !sourceUtmMedium && !sourceUtmCampaign && !sourceReferrer) return undefined;\n\n return sanitise({\n sourceRef,\n sourceUtmSource,\n sourceUtmMedium,\n sourceUtmCampaign,\n sourceReferrer,\n sourceLandingPath: url.pathname,\n });\n}\n\nfunction readSignupSourceCookie(): SignupSource | undefined {\n if (typeof document === \"undefined\") return undefined;\n const cookies = document.cookie ? document.cookie.split(\"; \") : [];\n for (const cookie of cookies) {\n const separator = cookie.indexOf(\"=\");\n if (separator === -1) continue;\n if (cookie.slice(0, separator) !== SIGNUP_SOURCE_COOKIE) continue;\n const value = cookie.slice(separator + 1);\n if (!value) return undefined;\n try {\n return sanitise(JSON.parse(decodeURIComponent(value)));\n } catch {\n return undefined;\n }\n }\n return undefined;\n}\n\nfunction writeSignupSourceCookie(source: SignupSource): void {\n document.cookie = `${SIGNUP_SOURCE_COOKIE}=${encodeURIComponent(JSON.stringify(source))}; path=/; max-age=${SIGNUP_SOURCE_COOKIE_MAX_AGE}; SameSite=Lax`;\n}\n\n/**\n * First touch: an existing in-memory value or cookie is never overwritten.\n * Writes the cookie only when persist is true and no cookie exists yet.\n */\nexport function captureSignupSource(params: { persist: boolean }): void {\n if (typeof window === \"undefined\" || typeof document === \"undefined\") return;\n\n const existingCookie = readSignupSourceCookie();\n\n if (!memorySource) {\n memorySource =\n existingCookie ??\n readSignupSourceFromLocation({\n url: window.location.href,\n referrer: document.referrer,\n ownHost: window.location.host,\n });\n }\n\n if (params.persist && !existingCookie && memorySource) writeSignupSourceCookie(memorySource);\n}\n\n/** The in-memory value, else the cookie value, else undefined. */\nexport function getSignupSource(): SignupSource | undefined {\n return memorySource ?? readSignupSourceCookie();\n}\n","export const COMPANY_ADMINISTRATOR_ROLE_ID = \"2e1eee00-6cba-4506-9059-ccd24e4ea5b0\";\n\nexport type PermissionValue = boolean | string;\n\nexport type ActionType = \"read\" | \"create\" | \"update\" | \"delete\";\n\nexport const ACTION_TYPES: ActionType[] = [\"read\", \"create\", \"update\", \"delete\"];\n\n/** The permissions object shape used by both Module and PermissionMapping entities */\nexport type PermissionsMap = {\n create?: PermissionValue;\n read?: PermissionValue;\n update?: PermissionValue;\n delete?: PermissionValue;\n};\n\n/**\n * Declarative-RBAC matrix types.\n *\n * Mirror of the library types defined in\n * `packages/nestjs-neo4jsonapi/src/foundations/rbac/dsl/types.ts`.\n * Frontend does not import from backend, so the shape is redefined here.\n *\n * A `PermToken` represents a single permission entry:\n * - `scope: true` → unconditional (e.g. full read of the module)\n * - `scope: false` → nothing (rarely used, mostly a placeholder)\n * - `scope: \"path\"` → scoped by relationship path (e.g. \"orders.account\")\n */\nexport type PermToken = { action: string; scope: boolean | string };\n\n/**\n * A per-module block of the matrix. Always has a `default` row (permissions\n * granted to every role). Additional keys are role IDs → role-specific\n * permission tokens that are unioned with `default` to produce the effective\n * permissions for that role in that module.\n */\nexport type RbacModuleBlock = { default: PermToken[] } & Record<string, PermToken[]>;\n\n/**\n * The full RBAC matrix as served by the dev endpoint `GET /_dev/rbac/matrix`.\n * Keys are module IDs; values are module blocks.\n */\nexport type RbacMatrix = Record<string, RbacModuleBlock>;\n","import { AbstractService, EndpointCreator, HttpMethod, Modules } from \"../../../core\";\nimport type { RbacMatrixModel } from \"./RbacMatrixModel\";\nimport type { RbacMatrix } from \"./RbacTypes\";\n\n/**\n * RbacService — fetches RBAC configuration for the admin UI.\n *\n * Declarative-matrix methods (`fetchMatrix`, `saveMatrix`) talk to the\n * dev-only endpoints added in\n * `packages/nestjs-neo4jsonapi/.../rbac-dev.controller.ts`. The controller\n * speaks JSON:API (singleton resource with `type: \"rbac-matrix\"`, `id:\n * \"singleton\"`), so these methods go through the standard `callApi()`\n * pipeline like every other service in the codebase.\n *\n * The backend only registers these routes when `devMode` is enabled on\n * `RbacModule.register` (see `apps/api/src/features/features.modules.ts`).\n * In production the routes return 404; callers should guard with a dev-mode\n * check.\n */\nexport class RbacService extends AbstractService {\n /**\n * Fetch the current RBAC matrix plus each module's known BFS relationship\n * paths (used by the permission picker as scope suggestions).\n *\n * Dev-only endpoint — see class header.\n */\n static async fetchMatrix(): Promise<{\n matrix: RbacMatrix;\n modulePaths: Record<string, readonly string[]>;\n }> {\n const endpoint = new EndpointCreator({ endpoint: Modules.RbacMatrix }).generate();\n\n const model = await this.callApi<RbacMatrixModel>({\n type: Modules.RbacMatrix,\n method: HttpMethod.GET,\n endpoint,\n });\n\n return {\n matrix: model.matrix ?? {},\n modulePaths: model.modulePaths ?? {},\n };\n }\n\n /**\n * Persist a matrix back to the declarative `permissions.ts` file.\n *\n * The backend serializes the matrix to formatted TypeScript using the\n * provided `roleNames` / `moduleNames` lookup tables (so the emitted file\n * references `RoleId.X` / `ModuleId.X` rather than raw UUIDs) and writes\n * it to `outputPath` (absolute, or relative to the repo root).\n *\n * Dev-only endpoint — see class header.\n */\n static async saveMatrix(args: {\n matrix: RbacMatrix;\n roleNames: Record<string, string>;\n moduleNames: Record<string, string>;\n outputPath: string;\n }): Promise<{ bytesWritten: number; path: string }> {\n const endpoint = new EndpointCreator({ endpoint: Modules.RbacMatrix }).generate();\n\n const model = await this.callApi<RbacMatrixModel>({\n type: Modules.RbacMatrix,\n method: HttpMethod.PUT,\n endpoint,\n input: args,\n });\n\n return {\n bytesWritten: model.bytesWritten ?? 0,\n path: model.path ?? \"\",\n };\n }\n}\n"]}
|
package/dist/client/index.js
CHANGED
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
|
|
33
|
-
var
|
|
33
|
+
var _chunkJ37GJKCBjs = require('../chunk-J37GJKCB.js');
|
|
34
34
|
require('../chunk-SYMI4IDW.js');
|
|
35
35
|
|
|
36
36
|
|
|
@@ -45,9 +45,9 @@ var _chunk3EPNHTMHjs = require('../chunk-3EPNHTMH.js');
|
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
|
|
48
|
-
var
|
|
48
|
+
var _chunkQ5SMFSE4js = require('../chunk-Q5SMFSE4.js');
|
|
49
49
|
require('../chunk-G4JR3SFV.js');
|
|
50
|
-
require('../chunk-
|
|
50
|
+
require('../chunk-5XP5G45B.js');
|
|
51
51
|
require('../chunk-HROKKUBQ.js');
|
|
52
52
|
require('../chunk-DGN3PR2F.js');
|
|
53
53
|
require('../chunk-Z6T2575A.js');
|
|
@@ -138,5 +138,5 @@ require('../chunk-7QVYU63E.js');
|
|
|
138
138
|
|
|
139
139
|
|
|
140
140
|
|
|
141
|
-
exports.ClientJsonApiDelete = _chunk3VNDFKT7js.ClientJsonApiDelete; exports.ClientJsonApiGet = _chunk3VNDFKT7js.ClientJsonApiGet; exports.ClientJsonApiPatch = _chunk3VNDFKT7js.ClientJsonApiPatch; exports.ClientJsonApiPost = _chunk3VNDFKT7js.ClientJsonApiPost; exports.ClientJsonApiPut = _chunk3VNDFKT7js.ClientJsonApiPut; exports.JsonApiContext = _chunk3EPNHTMHjs.JsonApiContext; exports.JsonApiProvider =
|
|
141
|
+
exports.ClientJsonApiDelete = _chunk3VNDFKT7js.ClientJsonApiDelete; exports.ClientJsonApiGet = _chunk3VNDFKT7js.ClientJsonApiGet; exports.ClientJsonApiPatch = _chunk3VNDFKT7js.ClientJsonApiPatch; exports.ClientJsonApiPost = _chunk3VNDFKT7js.ClientJsonApiPost; exports.ClientJsonApiPut = _chunk3VNDFKT7js.ClientJsonApiPut; exports.JsonApiContext = _chunk3EPNHTMHjs.JsonApiContext; exports.JsonApiProvider = _chunkJ37GJKCBjs.JsonApiProvider; exports.TableGeneratorRegistry = _chunkJ37GJKCBjs.TableGeneratorRegistry; exports.buildClientUrl = _chunk3VNDFKT7js.buildClientUrl; exports.computeLayeredLayout = _chunkJ37GJKCBjs.computeLayeredLayout; exports.configureClientConfig = _chunkQ5SMFSE4js.configureClientConfig; exports.configureClientJsonApi = _chunk3VNDFKT7js.configureClientJsonApi; exports.configureI18n = _chunkNP3AFULUjs.configureI18n; exports.configureJsonApi = _chunkQ5SMFSE4js.configureJsonApi; exports.directFetch = _chunk5WM72MLEjs.directFetch; exports.fitLayeredLayoutToAspectRatio = _chunkJ37GJKCBjs.fitLayeredLayoutToAspectRatio; exports.getApiUrl = _chunkQ5SMFSE4js.getApiUrl; exports.getAppUrl = _chunkQ5SMFSE4js.getAppUrl; exports.getClientApiUrl = _chunk3VNDFKT7js.getClientApiUrl; exports.getClientAppUrl = _chunk3VNDFKT7js.getClientAppUrl; exports.getClientToken = _chunkLXKSUWAVjs.getClientToken; exports.getClientTrackablePages = _chunk3VNDFKT7js.getClientTrackablePages; exports.getI18nLink = _chunkNP3AFULUjs.getI18nLink; exports.getPublicApiUrl = _chunkQ5SMFSE4js.getPublicApiUrl; exports.getStripePublishableKey = _chunkQ5SMFSE4js.getStripePublishableKey; exports.getTrackablePages = _chunkQ5SMFSE4js.getTrackablePages; exports.registerTableGenerator = _chunkJ37GJKCBjs.registerTableGenerator; exports.tableGeneratorRegistry = _chunkJ37GJKCBjs.tableGeneratorRegistry; exports.useContentTableStructure = _chunkJ37GJKCBjs.useContentTableStructure; exports.useCustomD3Graph = _chunkJ37GJKCBjs.useCustomD3Graph; exports.useDataListRetriever = _chunkJ37GJKCBjs.useDataListRetriever; exports.useDebounce = _chunkJ37GJKCBjs.useDebounce; exports.useI18nDateFnsLocale = _chunkNP3AFULUjs.useI18nDateFnsLocale; exports.useI18nLocale = _chunkNP3AFULUjs.useI18nLocale; exports.useI18nRouter = _chunkNP3AFULUjs.useI18nRouter; exports.useI18nTranslations = _chunkNP3AFULUjs.useI18nTranslations; exports.useJsonApiConfig = _chunk3EPNHTMHjs.useJsonApiConfig; exports.useJsonApiConfigOptional = _chunk3EPNHTMHjs.useJsonApiConfigOptional; exports.useJsonApiGet = _chunkJ37GJKCBjs.useJsonApiGet; exports.useJsonApiMutation = _chunkJ37GJKCBjs.useJsonApiMutation; exports.useNotificationSync = _chunkJ37GJKCBjs.useNotificationSync; exports.useOAuthClient = _chunkJ37GJKCBjs.useOAuthClient; exports.useOAuthClients = _chunkJ37GJKCBjs.useOAuthClients; exports.useOAuthConsent = _chunkJ37GJKCBjs.useOAuthConsent; exports.useOAuthScopeText = _chunkJ37GJKCBjs.useOAuthScopeText; exports.usePageTracker = _chunkJ37GJKCBjs.usePageTracker; exports.usePageUrlGenerator = _chunkJ37GJKCBjs.usePageUrlGenerator; exports.usePushNotifications = _chunkJ37GJKCBjs.usePushNotifications; exports.useRehydration = _chunkJ37GJKCBjs.useRehydration; exports.useRehydrationList = _chunkJ37GJKCBjs.useRehydrationList; exports.useRoleTableStructure = _chunkJ37GJKCBjs.useRoleTableStructure; exports.useSocket = _chunkJ37GJKCBjs.useSocket; exports.useSubscriptionStatus = _chunkJ37GJKCBjs.useSubscriptionStatus; exports.useTableGenerator = _chunkJ37GJKCBjs.useTableGenerator; exports.useUrlRewriter = _chunkJ37GJKCBjs.useUrlRewriter; exports.useUserSearch = _chunkJ37GJKCBjs.useUserSearch; exports.useUserTableStructure = _chunkJ37GJKCBjs.useUserTableStructure;
|
|
142
142
|
//# sourceMappingURL=index.js.map
|
package/dist/client/index.mjs
CHANGED
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
useUrlRewriter,
|
|
30
30
|
useUserSearch,
|
|
31
31
|
useUserTableStructure
|
|
32
|
-
} from "../chunk-
|
|
32
|
+
} from "../chunk-6DNGLY5Y.mjs";
|
|
33
33
|
import "../chunk-5T2AQMQ2.mjs";
|
|
34
34
|
import {
|
|
35
35
|
JsonApiContext,
|
|
@@ -44,9 +44,9 @@ import {
|
|
|
44
44
|
getPublicApiUrl,
|
|
45
45
|
getStripePublishableKey,
|
|
46
46
|
getTrackablePages
|
|
47
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-JL6XL5NK.mjs";
|
|
48
48
|
import "../chunk-PW42LRSL.mjs";
|
|
49
|
-
import "../chunk-
|
|
49
|
+
import "../chunk-HNK2O6YE.mjs";
|
|
50
50
|
import "../chunk-RW6XZGZG.mjs";
|
|
51
51
|
import "../chunk-OY65RYD3.mjs";
|
|
52
52
|
import "../chunk-W7U6O3OE.mjs";
|
package/dist/components/index.js
CHANGED
|
@@ -540,10 +540,10 @@
|
|
|
540
540
|
|
|
541
541
|
|
|
542
542
|
|
|
543
|
-
var
|
|
543
|
+
var _chunkJ37GJKCBjs = require('../chunk-J37GJKCB.js');
|
|
544
544
|
require('../chunk-SYMI4IDW.js');
|
|
545
545
|
require('../chunk-3EPNHTMH.js');
|
|
546
|
-
require('../chunk-
|
|
546
|
+
require('../chunk-Q5SMFSE4.js');
|
|
547
547
|
require('../chunk-G4JR3SFV.js');
|
|
548
548
|
|
|
549
549
|
|
|
@@ -556,7 +556,7 @@ require('../chunk-G4JR3SFV.js');
|
|
|
556
556
|
|
|
557
557
|
|
|
558
558
|
|
|
559
|
-
var
|
|
559
|
+
var _chunk5XP5G45Bjs = require('../chunk-5XP5G45B.js');
|
|
560
560
|
require('../chunk-HROKKUBQ.js');
|
|
561
561
|
require('../chunk-DGN3PR2F.js');
|
|
562
562
|
require('../chunk-Z6T2575A.js');
|
|
@@ -1125,5 +1125,5 @@ require('../chunk-7QVYU63E.js');
|
|
|
1125
1125
|
|
|
1126
1126
|
|
|
1127
1127
|
|
|
1128
|
-
exports.ADMINISTRATION_I18N_KEYS = _chunkS4FSGMKXjs.ADMINISTRATION_I18N_KEYS; exports.ADMIN_PLATFORM_SECTIONS = _chunkS4FSGMKXjs.ADMIN_PLATFORM_SECTIONS; exports.AI_CONNECTIONS_I18N_KEYS = _chunkS4FSGMKXjs.AI_CONNECTIONS_I18N_KEYS; exports.AI_CONNECTION_TYPE_ORDER = _chunkS4FSGMKXjs.AI_CONNECTION_TYPE_ORDER; exports.AcceptInvitation = _chunkS4FSGMKXjs.AcceptInvitation; exports.Accordion = _chunkS4FSGMKXjs.Accordion; exports.AccordionContent = _chunkS4FSGMKXjs.AccordionContent; exports.AccordionItem = _chunkS4FSGMKXjs.AccordionItem; exports.AccordionTrigger = _chunkS4FSGMKXjs.AccordionTrigger; exports.AccountDeletionAdminTrigger = _chunkS4FSGMKXjs.AccountDeletionAdminTrigger; exports.AccountDeletionCancelledNotice = _chunkS4FSGMKXjs.AccountDeletionCancelledNotice; exports.AccountDeletionKeepContainer = _chunkS4FSGMKXjs.AccountDeletionKeepContainer; exports.ActivateAccount = _chunkS4FSGMKXjs.ActivateAccount; exports.AddUserToRole = _chunkS4FSGMKXjs.AddUserToRole; exports.AdminCompanyContainer = _chunkS4FSGMKXjs.AdminCompanyContainer; exports.AdminIndexContainer = _chunkS4FSGMKXjs.AdminIndexContainer; exports.AdminIndexGrid = _chunkS4FSGMKXjs.AdminIndexGrid; exports.AdminUsersList = _chunkS4FSGMKXjs.AdminUsersList; exports.AiConnection = _chunk77JC2UCFjs.AiConnection; exports.AiConnectionDeleter = _chunkS4FSGMKXjs.AiConnectionDeleter; exports.AiConnectionEditor = _chunkS4FSGMKXjs.AiConnectionEditor; exports.AiConnectionFields = _chunk77JC2UCFjs.AiConnectionFields; exports.AiConnectionModule = _chunk77JC2UCFjs.AiConnectionModule; exports.AiConnectionService = _chunk77JC2UCFjs.AiConnectionService; exports.AiConnectionTypeCard = _chunkS4FSGMKXjs.AiConnectionTypeCard; exports.AiConnectionsContainer = _chunkS4FSGMKXjs.AiConnectionsContainer; exports.AiConnectionsProvider = _chunkS4FSGMKXjs.AiConnectionsProvider; exports.Alert = _chunkS4FSGMKXjs.Alert; exports.AlertAction = _chunkS4FSGMKXjs.AlertAction; exports.AlertDescription = _chunkS4FSGMKXjs.AlertDescription; exports.AlertDialog = _chunkS4FSGMKXjs.AlertDialog; exports.AlertDialogAction = _chunkS4FSGMKXjs.AlertDialogAction; exports.AlertDialogCancel = _chunkS4FSGMKXjs.AlertDialogCancel; exports.AlertDialogContent = _chunkS4FSGMKXjs.AlertDialogContent; exports.AlertDialogDescription = _chunkS4FSGMKXjs.AlertDialogDescription; exports.AlertDialogFooter = _chunkS4FSGMKXjs.AlertDialogFooter; exports.AlertDialogHeader = _chunkS4FSGMKXjs.AlertDialogHeader; exports.AlertDialogMedia = _chunkS4FSGMKXjs.AlertDialogMedia; exports.AlertDialogOverlay = _chunkS4FSGMKXjs.AlertDialogOverlay; exports.AlertDialogPortal = _chunkS4FSGMKXjs.AlertDialogPortal; exports.AlertDialogTitle = _chunkS4FSGMKXjs.AlertDialogTitle; exports.AlertDialogTrigger = _chunkS4FSGMKXjs.AlertDialogTrigger; exports.AlertTitle = _chunkS4FSGMKXjs.AlertTitle; exports.AllUsersListContainer = _chunkS4FSGMKXjs.AllUsersListContainer; exports.AllowedUsersDetails = _chunkS4FSGMKXjs.AllowedUsersDetails; exports.ApprovalActionCard = _chunkS4FSGMKXjs.ApprovalActionCard; exports.AssistantBlockNoteComposer = _chunkS4FSGMKXjs.AssistantBlockNoteComposer; exports.AssistantComposer = _chunkS4FSGMKXjs.AssistantComposer; exports.AssistantContainer = _chunkS4FSGMKXjs.AssistantContainer; exports.AssistantContainerWithApprovals = _chunkS4FSGMKXjs.AssistantContainerWithApprovals; exports.AssistantPageContainer = _chunkS4FSGMKXjs.AssistantPageContainer; exports.AssistantThread = _chunkS4FSGMKXjs.AssistantThread; exports.AttributeElement = _chunkS4FSGMKXjs.AttributeElement; exports.AuthContainer = _chunkS4FSGMKXjs.AuthContainer; exports.Avatar = _chunkS4FSGMKXjs.Avatar; exports.AvatarBadge = _chunkS4FSGMKXjs.AvatarBadge; exports.AvatarFallback = _chunkS4FSGMKXjs.AvatarFallback; exports.AvatarGroup = _chunkS4FSGMKXjs.AvatarGroup; exports.AvatarGroupCount = _chunkS4FSGMKXjs.AvatarGroupCount; exports.AvatarImage = _chunkS4FSGMKXjs.AvatarImage; exports.BackupCodesDialog = _chunkS4FSGMKXjs.BackupCodesDialog; exports.Badge = _chunkS4FSGMKXjs.Badge; exports.BlockNoteEditorContainer = _chunkS4FSGMKXjs.BlockNoteEditorContainer; exports.BlockNoteEditorMentionHoverCard = _chunkS4FSGMKXjs.BlockNoteEditorMentionHoverCard; exports.BlockNoteEditorMentionSuggestionMenu = _chunkS4FSGMKXjs.BlockNoteEditorMentionSuggestionMenu; exports.BlockNoteStaticViewer = _chunkS4FSGMKXjs.BlockNoteStaticViewer; exports.BlockNoteViewerContainer = _chunkS4FSGMKXjs.BlockNoteViewerContainer; exports.Board = _chunkS4FSGMKXjs.KanbanBoard; exports.Breadcrumb = _chunkS4FSGMKXjs.Breadcrumb; exports.BreadcrumbEllipsis = _chunkS4FSGMKXjs.BreadcrumbEllipsis; exports.BreadcrumbItem = _chunkS4FSGMKXjs.BreadcrumbItem; exports.BreadcrumbLink = _chunkS4FSGMKXjs.BreadcrumbLink; exports.BreadcrumbList = _chunkS4FSGMKXjs.BreadcrumbList; exports.BreadcrumbNavigation = _chunkS4FSGMKXjs.BreadcrumbNavigation; exports.BreadcrumbPage = _chunkS4FSGMKXjs.BreadcrumbPage; exports.BreadcrumbSeparator = _chunkS4FSGMKXjs.BreadcrumbSeparator; exports.Button = _chunkS4FSGMKXjs.Button; exports.CREDIT_WARNING_DISMISS_SEGMENT = _chunk77JC2UCFjs.CREDIT_WARNING_DISMISS_SEGMENT; exports.Calendar = _chunkS4FSGMKXjs.Calendar; exports.CalendarDayButton = _chunkS4FSGMKXjs.CalendarDayButton; exports.Card = _chunkS4FSGMKXjs.Card; exports.CardAction = _chunkS4FSGMKXjs.CardAction; exports.CardContent = _chunkS4FSGMKXjs.CardContent; exports.CardDescription = _chunkS4FSGMKXjs.CardDescription; exports.CardFooter = _chunkS4FSGMKXjs.CardFooter; exports.CardHeader = _chunkS4FSGMKXjs.CardHeader; exports.CardTitle = _chunkS4FSGMKXjs.CardTitle; exports.Carousel = _chunkS4FSGMKXjs.Carousel; exports.CarouselContent = _chunkS4FSGMKXjs.CarouselContent; exports.CarouselItem = _chunkS4FSGMKXjs.CarouselItem; exports.CarouselNext = _chunkS4FSGMKXjs.CarouselNext; exports.CarouselPrevious = _chunkS4FSGMKXjs.CarouselPrevious; exports.ChartContainer = _chunkS4FSGMKXjs.ChartContainer; exports.ChartLegend = _chunkS4FSGMKXjs.ChartLegend; exports.ChartLegendContent = _chunkS4FSGMKXjs.ChartLegendContent; exports.ChartStyle = _chunkS4FSGMKXjs.ChartStyle; exports.ChartTooltip = _chunkS4FSGMKXjs.ChartTooltip; exports.ChartTooltipContent = _chunkS4FSGMKXjs.ChartTooltipContent; exports.Checkbox = _chunkS4FSGMKXjs.Checkbox; exports.Collapsible = _chunkS4FSGMKXjs.Collapsible; exports.CollapsibleContent = _chunkS4FSGMKXjs.CollapsibleContent; exports.CollapsibleTrigger = _chunkS4FSGMKXjs.CollapsibleTrigger; exports.Column = _chunkS4FSGMKXjs.KanbanColumn; exports.ColumnHandle = _chunkS4FSGMKXjs.KanbanColumnHandle; exports.Combobox = _chunkS4FSGMKXjs.Combobox; exports.ComboboxChip = _chunkS4FSGMKXjs.ComboboxChip; exports.ComboboxChips = _chunkS4FSGMKXjs.ComboboxChips; exports.ComboboxChipsInput = _chunkS4FSGMKXjs.ComboboxChipsInput; exports.ComboboxCollection = _chunkS4FSGMKXjs.ComboboxCollection; exports.ComboboxContent = _chunkS4FSGMKXjs.ComboboxContent; exports.ComboboxEmpty = _chunkS4FSGMKXjs.ComboboxEmpty; exports.ComboboxGroup = _chunkS4FSGMKXjs.ComboboxGroup; exports.ComboboxInput = _chunkS4FSGMKXjs.ComboboxInput; exports.ComboboxItem = _chunkS4FSGMKXjs.ComboboxItem; exports.ComboboxLabel = _chunkS4FSGMKXjs.ComboboxLabel; exports.ComboboxList = _chunkS4FSGMKXjs.ComboboxList; exports.ComboboxSeparator = _chunkS4FSGMKXjs.ComboboxSeparator; exports.ComboboxTrigger = _chunkS4FSGMKXjs.ComboboxTrigger; exports.ComboboxValue = _chunkS4FSGMKXjs.ComboboxValue; exports.Command = _chunkS4FSGMKXjs.Command; exports.CommandDialog = _chunkS4FSGMKXjs.CommandDialog; exports.CommandEmpty = _chunkS4FSGMKXjs.CommandEmpty; exports.CommandGroup = _chunkS4FSGMKXjs.CommandGroup; exports.CommandInput = _chunkS4FSGMKXjs.CommandInput; exports.CommandItem = _chunkS4FSGMKXjs.CommandItem; exports.CommandList = _chunkS4FSGMKXjs.CommandList; exports.CommandSeparator = _chunkS4FSGMKXjs.CommandSeparator; exports.CommandShortcut = _chunkS4FSGMKXjs.CommandShortcut; exports.CommonAddTrigger = _chunkS4FSGMKXjs.CommonAddTrigger; exports.CommonAssociationCommandDialog = _chunkS4FSGMKXjs.CommonAssociationCommandDialog; exports.CommonAssociationTrigger = _chunkS4FSGMKXjs.CommonAssociationTrigger; exports.CommonDeleter = _chunkS4FSGMKXjs.CommonDeleter; exports.CommonEditorButtons = _chunkS4FSGMKXjs.CommonEditorButtons; exports.CommonEditorDiscardDialog = _chunkS4FSGMKXjs.CommonEditorDiscardDialog; exports.CommonEditorHeader = _chunkS4FSGMKXjs.CommonEditorHeader; exports.CommonEditorTrigger = _chunkS4FSGMKXjs.CommonEditorTrigger; exports.CompaniesList = _chunkS4FSGMKXjs.CompaniesList; exports.CompaniesListContainer = _chunkS4FSGMKXjs.CompaniesListContainer; exports.CompanyConfigurationEditor = _chunkS4FSGMKXjs.CompanyConfigurationEditor; exports.CompanyContainer = _chunkS4FSGMKXjs.CompanyContainer; exports.CompanyContent = _chunkS4FSGMKXjs.CompanyContent; exports.CompanyDeleter = _chunkS4FSGMKXjs.CompanyDeleter; exports.CompanyDetails = _chunkS4FSGMKXjs.CompanyDetails; exports.CompanyEditor = _chunkS4FSGMKXjs.CompanyEditor; exports.CompanyUsersList = _chunkS4FSGMKXjs.CompanyUsersList; exports.ConfirmDialog = _chunkS4FSGMKXjs.ConfirmDialog; exports.ContentListGrid = _chunkS4FSGMKXjs.ContentListGrid; exports.ContentListTable = _chunkS4FSGMKXjs.ContentListTable; exports.ContentTableSearch = _chunkS4FSGMKXjs.ContentTableSearch; exports.ContentTitle = _chunkS4FSGMKXjs.ContentTitle; exports.ContentsList = _chunkS4FSGMKXjs.ContentsList; exports.ContentsListById = _chunkS4FSGMKXjs.ContentsListById; exports.ContextMenu = _chunkS4FSGMKXjs.ContextMenu; exports.ContextMenuCheckboxItem = _chunkS4FSGMKXjs.ContextMenuCheckboxItem; exports.ContextMenuContent = _chunkS4FSGMKXjs.ContextMenuContent; exports.ContextMenuGroup = _chunkS4FSGMKXjs.ContextMenuGroup; exports.ContextMenuItem = _chunkS4FSGMKXjs.ContextMenuItem; exports.ContextMenuLabel = _chunkS4FSGMKXjs.ContextMenuLabel; exports.ContextMenuPortal = _chunkS4FSGMKXjs.ContextMenuPortal; exports.ContextMenuRadioGroup = _chunkS4FSGMKXjs.ContextMenuRadioGroup; exports.ContextMenuRadioItem = _chunkS4FSGMKXjs.ContextMenuRadioItem; exports.ContextMenuSeparator = _chunkS4FSGMKXjs.ContextMenuSeparator; exports.ContextMenuShortcut = _chunkS4FSGMKXjs.ContextMenuShortcut; exports.ContextMenuSub = _chunkS4FSGMKXjs.ContextMenuSub; exports.ContextMenuSubContent = _chunkS4FSGMKXjs.ContextMenuSubContent; exports.ContextMenuSubTrigger = _chunkS4FSGMKXjs.ContextMenuSubTrigger; exports.ContextMenuTrigger = _chunkS4FSGMKXjs.ContextMenuTrigger; exports.ContributorsList = _chunkS4FSGMKXjs.ContributorsList; exports.Cookies = _chunkS4FSGMKXjs.Cookies; exports.CreditWarningBanner = _chunkS4FSGMKXjs.CreditWarningBanner; exports.CurrencyInput = _chunkS4FSGMKXjs.CurrencyInput; exports.DatePickerPopover = _chunkS4FSGMKXjs.DatePickerPopover; exports.DateRangeSelector = _chunkS4FSGMKXjs.DateRangeSelector; exports.DetailField = _chunkS4FSGMKXjs.DetailField; exports.Dialog = _chunkS4FSGMKXjs.Dialog; exports.DialogClose = _chunkS4FSGMKXjs.DialogClose; exports.DialogContent = _chunkS4FSGMKXjs.DialogContent; exports.DialogDescription = _chunkS4FSGMKXjs.DialogDescription; exports.DialogFooter = _chunkS4FSGMKXjs.DialogFooter; exports.DialogHeader = _chunkS4FSGMKXjs.DialogHeader; exports.DialogOverlay = _chunkS4FSGMKXjs.DialogOverlay; exports.DialogPortal = _chunkS4FSGMKXjs.DialogPortal; exports.DialogTitle = _chunkS4FSGMKXjs.DialogTitle; exports.DialogTrigger = _chunkS4FSGMKXjs.DialogTrigger; exports.DisableTwoFactorDialog = _chunkS4FSGMKXjs.DisableTwoFactorDialog; exports.Drawer = _chunkS4FSGMKXjs.Drawer; exports.DrawerClose = _chunkS4FSGMKXjs.DrawerClose; exports.DrawerContent = _chunkS4FSGMKXjs.DrawerContent; exports.DrawerDescription = _chunkS4FSGMKXjs.DrawerDescription; exports.DrawerFooter = _chunkS4FSGMKXjs.DrawerFooter; exports.DrawerHeader = _chunkS4FSGMKXjs.DrawerHeader; exports.DrawerOverlay = _chunkS4FSGMKXjs.DrawerOverlay; exports.DrawerPortal = _chunkS4FSGMKXjs.DrawerPortal; exports.DrawerTitle = _chunkS4FSGMKXjs.DrawerTitle; exports.DrawerTrigger = _chunkS4FSGMKXjs.DrawerTrigger; exports.DropdownMenu = _chunkS4FSGMKXjs.DropdownMenu; exports.DropdownMenuCheckboxItem = _chunkS4FSGMKXjs.DropdownMenuCheckboxItem; exports.DropdownMenuContent = _chunkS4FSGMKXjs.DropdownMenuContent; exports.DropdownMenuGroup = _chunkS4FSGMKXjs.DropdownMenuGroup; exports.DropdownMenuItem = _chunkS4FSGMKXjs.DropdownMenuItem; exports.DropdownMenuLabel = _chunkS4FSGMKXjs.DropdownMenuLabel; exports.DropdownMenuPortal = _chunkS4FSGMKXjs.DropdownMenuPortal; exports.DropdownMenuRadioGroup = _chunkS4FSGMKXjs.DropdownMenuRadioGroup; exports.DropdownMenuRadioItem = _chunkS4FSGMKXjs.DropdownMenuRadioItem; exports.DropdownMenuSeparator = _chunkS4FSGMKXjs.DropdownMenuSeparator; exports.DropdownMenuShortcut = _chunkS4FSGMKXjs.DropdownMenuShortcut; exports.DropdownMenuSub = _chunkS4FSGMKXjs.DropdownMenuSub; exports.DropdownMenuSubContent = _chunkS4FSGMKXjs.DropdownMenuSubContent; exports.DropdownMenuSubTrigger = _chunkS4FSGMKXjs.DropdownMenuSubTrigger; exports.DropdownMenuTrigger = _chunkS4FSGMKXjs.DropdownMenuTrigger; exports.EditableAvatar = _chunkS4FSGMKXjs.EditableAvatar; exports.EditorSheet = _chunkS4FSGMKXjs.EditorSheet; exports.EmailBlastContainer = _chunkS4FSGMKXjs.EmailBlastContainer; exports.EmailBlastEditor = _chunkS4FSGMKXjs.EmailBlastEditor; exports.EmailBlastSendDialog = _chunkS4FSGMKXjs.EmailBlastSendDialog; exports.EmailBlastsList = _chunkS4FSGMKXjs.EmailBlastsList; exports.EmailBlastsListContainer = _chunkS4FSGMKXjs.EmailBlastsListContainer; exports.EmptyState = _chunkS4FSGMKXjs.EmptyState; exports.EntityAvatar = _chunkS4FSGMKXjs.EntityAvatar; exports.EntityHero = _chunkS4FSGMKXjs.EntityHero; exports.EntityHeroAvatar = _chunkS4FSGMKXjs.EntityHeroAvatar; exports.EntityHeroLayout = _chunkS4FSGMKXjs.EntityHeroLayout; exports.EntityHeroMetaRow = _chunkS4FSGMKXjs.EntityHeroMetaRow; exports.EntityMentionLink = _chunkS4FSGMKXjs.EntityMentionLink; exports.EntityMultiSelector = _chunkS4FSGMKXjs.EntityMultiSelector; exports.EntitySection = _chunkS4FSGMKXjs.EntitySection; exports.EntitySelector = _chunkS4FSGMKXjs.EntitySelector; exports.ErrorDetails = _chunkS4FSGMKXjs.ErrorDetails; exports.Field = _chunkS4FSGMKXjs.Field; exports.FieldContent = _chunkS4FSGMKXjs.FieldContent; exports.FieldDescription = _chunkS4FSGMKXjs.FieldDescription; exports.FieldError = _chunkS4FSGMKXjs.FieldError; exports.FieldGroup = _chunkS4FSGMKXjs.FieldGroup; exports.FieldLabel = _chunkS4FSGMKXjs.FieldLabel; exports.FieldLegend = _chunkS4FSGMKXjs.FieldLegend; exports.FieldSeparator = _chunkS4FSGMKXjs.FieldSeparator; exports.FieldSet = _chunkS4FSGMKXjs.FieldSet; exports.FieldTitle = _chunkS4FSGMKXjs.FieldTitle; exports.FileInput = _chunkS4FSGMKXjs.FileInput; exports.FileUploader = _chunkS4FSGMKXjs.FileUploader; exports.FileUploaderContent = _chunkS4FSGMKXjs.FileUploaderContent; exports.FileUploaderItem = _chunkS4FSGMKXjs.FileUploaderItem; exports.FiscalDataDisplay = _chunkS4FSGMKXjs.FiscalDataDisplay; exports.ForgotPassword = _chunkS4FSGMKXjs.ForgotPassword; exports.Form = _chunkS4FSGMKXjs.Form; exports.FormBlockNote = _chunkS4FSGMKXjs.FormBlockNote; exports.FormBody = _chunkS4FSGMKXjs.FormBody; exports.FormCheckbox = _chunkS4FSGMKXjs.FormCheckbox; exports.FormCol = _chunkS4FSGMKXjs.FormCol; exports.FormDate = _chunkS4FSGMKXjs.FormDate; exports.FormDateTime = _chunkS4FSGMKXjs.FormDateTime; exports.FormFeatures = _chunkS4FSGMKXjs.FormFeatures; exports.FormFieldWrapper = _chunkS4FSGMKXjs.FormFieldWrapper; exports.FormInput = _chunkS4FSGMKXjs.FormInput; exports.FormPassword = _chunkS4FSGMKXjs.FormPassword; exports.FormPlaceAutocomplete = _chunkS4FSGMKXjs.FormPlaceAutocomplete; exports.FormRoles = _chunkS4FSGMKXjs.FormRoles; exports.FormRow = _chunkS4FSGMKXjs.FormRow; exports.FormSection = _chunkS4FSGMKXjs.FormSection; exports.FormSelect = _chunkS4FSGMKXjs.FormSelect; exports.FormSlider = _chunkS4FSGMKXjs.FormSlider; exports.FormSwitch = _chunkS4FSGMKXjs.FormSwitch; exports.FormTextarea = _chunkS4FSGMKXjs.FormTextarea; exports.GdprConsentCheckbox = _chunkS4FSGMKXjs.GdprConsentCheckbox; exports.GdprConsentSection = _chunkS4FSGMKXjs.GdprConsentSection; exports.HEADER_ROW_MIN_H = _chunkS4FSGMKXjs.HEADER_ROW_MIN_H; exports.HandbookAdminContainer = _chunkS4FSGMKXjs.HandbookAdminContainer; exports.HandbookAskContainer = _chunkS4FSGMKXjs.HandbookAskContainer; exports.HandbookAskSheet = _chunkS4FSGMKXjs.HandbookAskSheet; exports.HandbookContents = _chunkS4FSGMKXjs.HandbookContents; exports.HandbookIndexStatus = _chunkS4FSGMKXjs.HandbookIndexStatus; exports.HandbookPageContainer = _chunkS4FSGMKXjs.HandbookPageContainer; exports.HandbookPageDetails = _chunkS4FSGMKXjs.HandbookPageDetails; exports.HandbookPageNavigator = _chunkS4FSGMKXjs.HandbookPageNavigator; exports.HandbookPageNeighbours = _chunkS4FSGMKXjs.HandbookPageNeighbours; exports.HandbookPageToc = _chunkS4FSGMKXjs.HandbookPageToc; exports.HandbookSectionGroup = _chunkS4FSGMKXjs.HandbookSectionGroup; exports.HandbookSyncButton = _chunkS4FSGMKXjs.HandbookSyncButton; exports.Header = _chunkS4FSGMKXjs.Header; exports.HoverCard = _chunkS4FSGMKXjs.HoverCard; exports.HoverCardContent = _chunkS4FSGMKXjs.HoverCardContent; exports.HoverCardTrigger = _chunkS4FSGMKXjs.HoverCardTrigger; exports.HowToCommand = _chunkS4FSGMKXjs.HowToCommand; exports.HowToCommandViewer = _chunkS4FSGMKXjs.HowToCommandViewer; exports.HowToContainer = _chunkS4FSGMKXjs.HowToContainer; exports.HowToContent = _chunkS4FSGMKXjs.HowToContent; exports.HowToDeleter = _chunkS4FSGMKXjs.HowToDeleter; exports.HowToDetails = _chunkS4FSGMKXjs.HowToDetails; exports.HowToEditor = _chunkS4FSGMKXjs.HowToEditor; exports.HowToList = _chunkS4FSGMKXjs.HowToList; exports.HowToListContainer = _chunkS4FSGMKXjs.HowToListContainer; exports.HowToMultiSelector = _chunkS4FSGMKXjs.HowToMultiSelector; exports.HowToReindexButton = _chunkS4FSGMKXjs.HowToReindexButton; exports.HowToSelector = _chunkS4FSGMKXjs.HowToSelector; exports.Input = _chunkS4FSGMKXjs.Input; exports.InputGroup = _chunkS4FSGMKXjs.InputGroup; exports.InputGroupAddon = _chunkS4FSGMKXjs.InputGroupAddon; exports.InputGroupButton = _chunkS4FSGMKXjs.InputGroupButton; exports.InputGroupInput = _chunkS4FSGMKXjs.InputGroupInput; exports.InputGroupText = _chunkS4FSGMKXjs.InputGroupText; exports.InputGroupTextarea = _chunkS4FSGMKXjs.InputGroupTextarea; exports.InputOTP = _chunkS4FSGMKXjs.InputOTP; exports.InputOTPGroup = _chunkS4FSGMKXjs.InputOTPGroup; exports.InputOTPSeparator = _chunkS4FSGMKXjs.InputOTPSeparator; exports.InputOTPSlot = _chunkS4FSGMKXjs.InputOTPSlot; exports.ItalianFiscalData = _chunkS4FSGMKXjs.ItalianFiscalData_default; exports.ItalianFiscalDataDisplay = _chunkS4FSGMKXjs.ItalianFiscalDataDisplay; exports.Item = _chunkS4FSGMKXjs.KanbanItem; exports.ItemHandle = _chunkS4FSGMKXjs.KanbanItemHandle; exports.Kanban = _chunkS4FSGMKXjs.KanbanRoot; exports.KanbanBoard = _chunkS4FSGMKXjs.KanbanBoard; exports.KanbanColumn = _chunkS4FSGMKXjs.KanbanColumn; exports.KanbanColumnHandle = _chunkS4FSGMKXjs.KanbanColumnHandle; exports.KanbanItem = _chunkS4FSGMKXjs.KanbanItem; exports.KanbanItemHandle = _chunkS4FSGMKXjs.KanbanItemHandle; exports.KanbanOverlay = _chunkS4FSGMKXjs.KanbanOverlay; exports.Label = _chunkS4FSGMKXjs.Label; exports.LandingComponent = _chunkS4FSGMKXjs.LandingComponent; exports.Link = _chunkS4FSGMKXjs.Link; exports.Login = _chunkS4FSGMKXjs.Login; exports.Logout = _chunkS4FSGMKXjs.Logout; exports.MermaidDiagram = _chunkS4FSGMKXjs.MermaidDiagram; exports.MessageItem = _chunkS4FSGMKXjs.MessageItem; exports.MessageList = _chunkS4FSGMKXjs.MessageList; exports.MessageSourcesPanel = _chunkS4FSGMKXjs.MessageSourcesPanel; exports.MicroLabel = _chunkS4FSGMKXjs.MicroLabel; exports.MobileNavigationBar = _chunkS4FSGMKXjs.MobileNavigationBar; exports.ModeToggleSwitch = _chunkS4FSGMKXjs.ModeToggleSwitch; exports.MultiFileUploader = _chunkS4FSGMKXjs.MultiFileUploader; exports.MultiSelect = _chunkS4FSGMKXjs.MultiSelect; exports.MultipleSelector = _chunkS4FSGMKXjs.MultipleSelector; exports.NavigationMenu = _chunkS4FSGMKXjs.NavigationMenu; exports.NavigationMenuContent = _chunkS4FSGMKXjs.NavigationMenuContent; exports.NavigationMenuIndicator = _chunkS4FSGMKXjs.NavigationMenuIndicator; exports.NavigationMenuItem = _chunkS4FSGMKXjs.NavigationMenuItem; exports.NavigationMenuLink = _chunkS4FSGMKXjs.NavigationMenuLink; exports.NavigationMenuList = _chunkS4FSGMKXjs.NavigationMenuList; exports.NavigationMenuPositioner = _chunkS4FSGMKXjs.NavigationMenuPositioner; exports.NavigationMenuTrigger = _chunkS4FSGMKXjs.NavigationMenuTrigger; exports.NotificationErrorBoundary = _chunkS4FSGMKXjs.NotificationErrorBoundary; exports.NotificationIcon = _chunkS4FSGMKXjs.NotificationIcon; exports.NotificationMenuItem = _chunkS4FSGMKXjs.NotificationMenuItem; exports.NotificationModal = _chunkS4FSGMKXjs.NotificationModal; exports.NotificationToast = _chunkS4FSGMKXjs.NotificationToast; exports.NotificationViewSwitcher = _chunkS4FSGMKXjs.NotificationViewSwitcher; exports.NotificationsList = _chunkS4FSGMKXjs.NotificationsList; exports.NotificationsListContainer = _chunkS4FSGMKXjs.NotificationsListContainer; exports.OAuthClientCard = _chunkS4FSGMKXjs.OAuthClientCard; exports.OAuthClientDetail = _chunkS4FSGMKXjs.OAuthClientDetail; exports.OAuthClientForm = _chunkS4FSGMKXjs.OAuthClientForm; exports.OAuthClientList = _chunkS4FSGMKXjs.OAuthClientList; exports.OAuthClientSecretDisplay = _chunkS4FSGMKXjs.OAuthClientSecretDisplay; exports.OAuthCompanySelector = _chunkS4FSGMKXjs.OAuthCompanySelector; exports.OAuthConsentActions = _chunkS4FSGMKXjs.OAuthConsentActions; exports.OAuthConsentHeader = _chunkS4FSGMKXjs.OAuthConsentHeader; exports.OAuthConsentScreen = _chunkS4FSGMKXjs.OAuthConsentScreen; exports.OAuthRedirectUriInput = _chunkS4FSGMKXjs.OAuthRedirectUriInput; exports.OAuthScopeList = _chunkS4FSGMKXjs.OAuthScopeList; exports.OAuthScopeSelector = _chunkS4FSGMKXjs.OAuthScopeSelector; exports.OnboardingCard = _chunkS4FSGMKXjs.OnboardingCard; exports.Overlay = _chunkS4FSGMKXjs.KanbanOverlay; exports.PageContainer = _chunkS4FSGMKXjs.PageContainer; exports.PageContainerContentDetails = _chunkS4FSGMKXjs.PageContainerContentDetails; exports.PageContentContainer = _chunkS4FSGMKXjs.PageContentContainer; exports.PageSection = _chunkS4FSGMKXjs.PageSection; exports.PasskeyButton = _chunkS4FSGMKXjs.PasskeyButton; exports.PasskeyList = _chunkS4FSGMKXjs.PasskeyList; exports.PasskeySetupDialog = _chunkS4FSGMKXjs.PasskeySetupDialog; exports.PasswordInput = _chunkS4FSGMKXjs.PasswordInput; exports.PlatformUsersContainer = _chunkS4FSGMKXjs.PlatformUsersContainer; exports.PlatformUsersList = _chunkS4FSGMKXjs.PlatformUsersList; exports.Popover = _chunkS4FSGMKXjs.Popover; exports.PopoverContent = _chunkS4FSGMKXjs.PopoverContent; exports.PopoverDescription = _chunkS4FSGMKXjs.PopoverDescription; exports.PopoverHeader = _chunkS4FSGMKXjs.PopoverHeader; exports.PopoverTitle = _chunkS4FSGMKXjs.PopoverTitle; exports.PopoverTrigger = _chunkS4FSGMKXjs.PopoverTrigger; exports.Progress = _chunkS4FSGMKXjs.Progress; exports.ProgressIndicator = _chunkS4FSGMKXjs.ProgressIndicator; exports.ProgressLabel = _chunkS4FSGMKXjs.ProgressLabel; exports.ProgressTrack = _chunkS4FSGMKXjs.ProgressTrack; exports.ProgressValue = _chunkS4FSGMKXjs.ProgressValue; exports.PushNotificationProvider = _chunkS4FSGMKXjs.PushNotificationProvider; exports.RadioGroup = _chunkS4FSGMKXjs.RadioGroup; exports.RadioGroupItem = _chunkS4FSGMKXjs.RadioGroupItem; exports.RbacByRoleContainer = _chunkS4FSGMKXjs.RbacByRoleContainer; exports.RbacContainer = _chunkS4FSGMKXjs.RbacContainer; exports.RbacPermissionCell = _chunkS4FSGMKXjs.RbacPermissionCell; exports.RbacPermissionPicker = _chunkS4FSGMKXjs.RbacPermissionPicker; exports.ReactMarkdownContainer = _chunkS4FSGMKXjs.ReactMarkdownContainer; exports.RecentPagesNavigator = _chunkS4FSGMKXjs.RecentPagesNavigator; exports.ReferralCodeCapture = _chunkS4FSGMKXjs.ReferralCodeCapture; exports.ReferralDialog = _chunkS4FSGMKXjs.ReferralDialog; exports.ReferralWidget = _chunkS4FSGMKXjs.ReferralWidget; exports.ReferralsAdminContainer = _chunkS4FSGMKXjs.ReferralsAdminContainer; exports.ReferralsAdminFunnel = _chunkS4FSGMKXjs.ReferralsAdminFunnel; exports.ReferralsAdminTiles = _chunkS4FSGMKXjs.ReferralsAdminTiles; exports.RefreshUser = _chunkS4FSGMKXjs.RefreshUser; exports.RelevantContentsList = _chunkS4FSGMKXjs.RelevantContentsList; exports.RelevantUsersList = _chunkS4FSGMKXjs.RelevantUsersList; exports.RemoveUserFromRole = _chunkS4FSGMKXjs.RemoveUserFromRole; exports.ResetPassword = _chunkS4FSGMKXjs.ResetPassword; exports.ResizableHandle = _chunkS4FSGMKXjs.ResizableHandle; exports.ResizablePanel = _chunkS4FSGMKXjs.ResizablePanel; exports.ResizablePanelGroup = _chunkS4FSGMKXjs.ResizablePanelGroup; exports.RoleContainer = _chunkS4FSGMKXjs.RoleContainer; exports.RoleDetails = _chunkS4FSGMKXjs.RoleDetails; exports.RoleUsersList = _chunkS4FSGMKXjs.RoleUsersList; exports.RolesList = _chunkS4FSGMKXjs.RolesList; exports.Root = _chunkS4FSGMKXjs.KanbanRoot; exports.RoundPageContainer = _chunkS4FSGMKXjs.RoundPageContainer; exports.RoundPageContainerTitle = _chunkS4FSGMKXjs.RoundPageContainerTitle; exports.ScrollArea = _chunkS4FSGMKXjs.ScrollArea; exports.ScrollBar = _chunkS4FSGMKXjs.ScrollBar; exports.SectionHeader = _chunkS4FSGMKXjs.SectionHeader; exports.SecurityContainer = _chunkS4FSGMKXjs.SecurityContainer; exports.Select = _chunkS4FSGMKXjs.Select; exports.SelectContent = _chunkS4FSGMKXjs.SelectContent; exports.SelectGroup = _chunkS4FSGMKXjs.SelectGroup; exports.SelectItem = _chunkS4FSGMKXjs.SelectItem; exports.SelectLabel = _chunkS4FSGMKXjs.SelectLabel; exports.SelectScrollDownButton = _chunkS4FSGMKXjs.SelectScrollDownButton; exports.SelectScrollUpButton = _chunkS4FSGMKXjs.SelectScrollUpButton; exports.SelectSeparator = _chunkS4FSGMKXjs.SelectSeparator; exports.SelectTrigger = _chunkS4FSGMKXjs.SelectTrigger; exports.SelectValue = _chunkS4FSGMKXjs.SelectValue; exports.Separator = _chunkS4FSGMKXjs.Separator; exports.Sheet = _chunkS4FSGMKXjs.Sheet; exports.SheetClose = _chunkS4FSGMKXjs.SheetClose; exports.SheetContent = _chunkS4FSGMKXjs.SheetContent; exports.SheetDescription = _chunkS4FSGMKXjs.SheetDescription; exports.SheetFooter = _chunkS4FSGMKXjs.SheetFooter; exports.SheetHeader = _chunkS4FSGMKXjs.SheetHeader; exports.SheetTitle = _chunkS4FSGMKXjs.SheetTitle; exports.SheetTrigger = _chunkS4FSGMKXjs.SheetTrigger; exports.Sidebar = _chunkS4FSGMKXjs.Sidebar; exports.SidebarContent = _chunkS4FSGMKXjs.SidebarContent; exports.SidebarFooter = _chunkS4FSGMKXjs.SidebarFooter; exports.SidebarGroup = _chunkS4FSGMKXjs.SidebarGroup; exports.SidebarGroupAction = _chunkS4FSGMKXjs.SidebarGroupAction; exports.SidebarGroupContent = _chunkS4FSGMKXjs.SidebarGroupContent; exports.SidebarGroupLabel = _chunkS4FSGMKXjs.SidebarGroupLabel; exports.SidebarHeader = _chunkS4FSGMKXjs.SidebarHeader; exports.SidebarInput = _chunkS4FSGMKXjs.SidebarInput; exports.SidebarInset = _chunkS4FSGMKXjs.SidebarInset; exports.SidebarMenu = _chunkS4FSGMKXjs.SidebarMenu; exports.SidebarMenuAction = _chunkS4FSGMKXjs.SidebarMenuAction; exports.SidebarMenuBadge = _chunkS4FSGMKXjs.SidebarMenuBadge; exports.SidebarMenuButton = _chunkS4FSGMKXjs.SidebarMenuButton; exports.SidebarMenuItem = _chunkS4FSGMKXjs.SidebarMenuItem; exports.SidebarMenuSkeleton = _chunkS4FSGMKXjs.SidebarMenuSkeleton; exports.SidebarMenuSub = _chunkS4FSGMKXjs.SidebarMenuSub; exports.SidebarMenuSubButton = _chunkS4FSGMKXjs.SidebarMenuSubButton; exports.SidebarMenuSubItem = _chunkS4FSGMKXjs.SidebarMenuSubItem; exports.SidebarProvider = _chunkS4FSGMKXjs.SidebarProvider; exports.SidebarRail = _chunkS4FSGMKXjs.SidebarRail; exports.SidebarSeparator = _chunkS4FSGMKXjs.SidebarSeparator; exports.SidebarTrigger = _chunkS4FSGMKXjs.SidebarTrigger; exports.SignupSourceCapture = _chunkS4FSGMKXjs.SignupSourceCapture; exports.Skeleton = _chunkS4FSGMKXjs.Skeleton; exports.Slider = _chunkS4FSGMKXjs.Slider; exports.Spinner = _chunkS4FSGMKXjs.Spinner; exports.Switch = _chunkS4FSGMKXjs.Switch; exports.Table = _chunkS4FSGMKXjs.Table; exports.TableBody = _chunkS4FSGMKXjs.TableBody; exports.TableCaption = _chunkS4FSGMKXjs.TableCaption; exports.TableCell = _chunkS4FSGMKXjs.TableCell; exports.TableCellAvatar = _chunkS4FSGMKXjs.TableCellAvatar; exports.TableFooter = _chunkS4FSGMKXjs.TableFooter; exports.TableHead = _chunkS4FSGMKXjs.TableHead; exports.TableHeader = _chunkS4FSGMKXjs.TableHeader; exports.TableRow = _chunkS4FSGMKXjs.TableRow; exports.Tabs = _chunkS4FSGMKXjs.Tabs; exports.TabsContainer = _chunkS4FSGMKXjs.TabsContainer; exports.TabsContent = _chunkS4FSGMKXjs.TabsContent; exports.TabsList = _chunkS4FSGMKXjs.TabsList; exports.TabsTrigger = _chunkS4FSGMKXjs.TabsTrigger; exports.Textarea = _chunkS4FSGMKXjs.Textarea; exports.Toaster = _chunkS4FSGMKXjs.Toaster; exports.Toggle = _chunkS4FSGMKXjs.Toggle; exports.TokenStatusIndicator = _chunkS4FSGMKXjs.TokenStatusIndicator; exports.Tooltip = _chunkS4FSGMKXjs.Tooltip; exports.TooltipContent = _chunkS4FSGMKXjs.TooltipContent; exports.TooltipProvider = _chunkS4FSGMKXjs.TooltipProvider; exports.TooltipTrigger = _chunkS4FSGMKXjs.TooltipTrigger; exports.TotpAuthenticatorList = _chunkS4FSGMKXjs.TotpAuthenticatorList; exports.TotpInput = _chunkS4FSGMKXjs.TotpInput; exports.TotpSetupDialog = _chunkS4FSGMKXjs.TotpSetupDialog; exports.TwoFactorChallenge = _chunkS4FSGMKXjs.TwoFactorChallenge; exports.TwoFactorSettings = _chunkS4FSGMKXjs.TwoFactorSettings; exports.UserAvatar = _chunkS4FSGMKXjs.UserAvatar; exports.UserAvatarEditor = _chunkS4FSGMKXjs.UserAvatarEditor; exports.UserAvatarList = _chunkS4FSGMKXjs.UserAvatarList; exports.UserContainer = _chunkS4FSGMKXjs.UserContainer; exports.UserContent = _chunkS4FSGMKXjs.UserContent; exports.UserDeleter = _chunkS4FSGMKXjs.UserDeleter; exports.UserEditor = _chunkS4FSGMKXjs.UserEditor; exports.UserIndexContainer = _chunkS4FSGMKXjs.UserIndexContainer; exports.UserIndexDetails = _chunkS4FSGMKXjs.UserIndexDetails; exports.UserListInAdd = _chunkS4FSGMKXjs.UserListInAdd; exports.UserMultiSelect = _chunkS4FSGMKXjs.UserMultiSelect; exports.UserReactivator = _chunkS4FSGMKXjs.UserReactivator; exports.UserResentInvitationEmail = _chunkS4FSGMKXjs.UserResentInvitationEmail; exports.UserRoleAdd = _chunkS4FSGMKXjs.UserRoleAdd; exports.UserRolesList = _chunkS4FSGMKXjs.UserRolesList; exports.UserSearchPopover = _chunkS4FSGMKXjs.UserSearchPopover; exports.UserSelector = _chunkS4FSGMKXjs.UserSelector; exports.UserStanadaloneDetails = _chunkS4FSGMKXjs.UserStanadaloneDetails; exports.UsersList = _chunkS4FSGMKXjs.UsersList; exports.UsersListByContentIds = _chunkS4FSGMKXjs.UsersListByContentIds; exports.UsersListContainer = _chunkS4FSGMKXjs.UsersListContainer; exports.WaitlistConfirmation = _chunkS4FSGMKXjs.WaitlistConfirmation; exports.WaitlistForm = _chunkS4FSGMKXjs.WaitlistForm; exports.WaitlistHeroSection = _chunkS4FSGMKXjs.WaitlistHeroSection; exports.WaitlistList = _chunkS4FSGMKXjs.WaitlistList; exports.WaitlistQuestionnaireRenderer = _chunkS4FSGMKXjs.WaitlistQuestionnaireRenderer; exports.WaitlistSuccessState = _chunkS4FSGMKXjs.WaitlistSuccessState; exports.badgeVariants = _chunkS4FSGMKXjs.badgeVariants; exports.buttonVariants = _chunkS4FSGMKXjs.buttonVariants; exports.cellComponent = _chunkS4FSGMKXjs.cellComponent; exports.cellDate = _chunkS4FSGMKXjs.cellDate; exports.cellDateTime = _chunkS4FSGMKXjs.cellDateTime; exports.cellId = _chunkS4FSGMKXjs.cellId; exports.cellLink = _chunkS4FSGMKXjs.cellLink; exports.cellUrl = _chunkS4FSGMKXjs.cellUrl; exports.commandFilterByKeywords = _chunkS4FSGMKXjs.commandFilterByKeywords; exports.createMentionInlineContentSpec = _chunkS4FSGMKXjs.createMentionInlineContentSpec; exports.errorToast = _chunkS4FSGMKXjs.errorToast; exports.generateNotificationData = _chunkS4FSGMKXjs.generateNotificationData; exports.getIcon = _chunk77JC2UCFjs.getIcon; exports.getIconByModule = _chunk77JC2UCFjs.getIconByModule; exports.getIconByModuleName = _chunk77JC2UCFjs.getIconByModuleName; exports.getInitials = _chunk77JC2UCFjs.getInitials; exports.hasOpenInnerLayer = _chunkS4FSGMKXjs.hasOpenInnerLayer; exports.isAccountDeletionEnabled = _chunkS4FSGMKXjs.isAccountDeletionEnabled; exports.isCreditWarningActive = _chunk77JC2UCFjs.isCreditWarningActive; exports.isDocumentEmpty = _chunkS4FSGMKXjs.isDocumentEmpty; exports.mentionDataAttrs = _chunkS4FSGMKXjs.mentionDataAttrs; exports.navigationMenuTriggerStyle = _chunkS4FSGMKXjs.navigationMenuTriggerStyle; exports.nextDateRange = _chunkS4FSGMKXjs.nextDateRange; exports.parseFiscalData = _chunkS4FSGMKXjs.parseFiscalData; exports.parseMentionElement = _chunkS4FSGMKXjs.parseMentionElement; exports.partitionTabs = _chunkS4FSGMKXjs.partitionTabs; exports.spinnerVariants = _chunkS4FSGMKXjs.spinnerVariants; exports.tabsListVariants = _chunkS4FSGMKXjs.tabsListVariants; exports.toggleVariants = _chunkS4FSGMKXjs.toggleVariants; exports.triggerAssociationToast = _chunkS4FSGMKXjs.triggerAssociationToast; exports.useAiConnections = _chunkS4FSGMKXjs.useAiConnections; exports.useCarousel = _chunkS4FSGMKXjs.useCarousel; exports.useComboboxAnchor = _chunkS4FSGMKXjs.useComboboxAnchor; exports.useDebounce = _chunkS4FSGMKXjs.useDebounce2; exports.useEditorDialog = _chunkS4FSGMKXjs.useEditorDialog; exports.useFileUpload = _chunkS4FSGMKXjs.useFileUpload; exports.useMentionInsert = _chunkS4FSGMKXjs.useMentionInsert; exports.useOptionalSidebar = _chunkS4FSGMKXjs.useOptionalSidebar; exports.useSidebar = _chunkS4FSGMKXjs.useSidebar; exports.useSidebarControls = _chunkS4FSGMKXjs.useSidebarControls;
|
|
1128
|
+
exports.ADMINISTRATION_I18N_KEYS = _chunkJ37GJKCBjs.ADMINISTRATION_I18N_KEYS; exports.ADMIN_PLATFORM_SECTIONS = _chunkJ37GJKCBjs.ADMIN_PLATFORM_SECTIONS; exports.AI_CONNECTIONS_I18N_KEYS = _chunkJ37GJKCBjs.AI_CONNECTIONS_I18N_KEYS; exports.AI_CONNECTION_TYPE_ORDER = _chunkJ37GJKCBjs.AI_CONNECTION_TYPE_ORDER; exports.AcceptInvitation = _chunkJ37GJKCBjs.AcceptInvitation; exports.Accordion = _chunkJ37GJKCBjs.Accordion; exports.AccordionContent = _chunkJ37GJKCBjs.AccordionContent; exports.AccordionItem = _chunkJ37GJKCBjs.AccordionItem; exports.AccordionTrigger = _chunkJ37GJKCBjs.AccordionTrigger; exports.AccountDeletionAdminTrigger = _chunkJ37GJKCBjs.AccountDeletionAdminTrigger; exports.AccountDeletionCancelledNotice = _chunkJ37GJKCBjs.AccountDeletionCancelledNotice; exports.AccountDeletionKeepContainer = _chunkJ37GJKCBjs.AccountDeletionKeepContainer; exports.ActivateAccount = _chunkJ37GJKCBjs.ActivateAccount; exports.AddUserToRole = _chunkJ37GJKCBjs.AddUserToRole; exports.AdminCompanyContainer = _chunkJ37GJKCBjs.AdminCompanyContainer; exports.AdminIndexContainer = _chunkJ37GJKCBjs.AdminIndexContainer; exports.AdminIndexGrid = _chunkJ37GJKCBjs.AdminIndexGrid; exports.AdminUsersList = _chunkJ37GJKCBjs.AdminUsersList; exports.AiConnection = _chunk5XP5G45Bjs.AiConnection; exports.AiConnectionDeleter = _chunkJ37GJKCBjs.AiConnectionDeleter; exports.AiConnectionEditor = _chunkJ37GJKCBjs.AiConnectionEditor; exports.AiConnectionFields = _chunk5XP5G45Bjs.AiConnectionFields; exports.AiConnectionModule = _chunk5XP5G45Bjs.AiConnectionModule; exports.AiConnectionService = _chunk5XP5G45Bjs.AiConnectionService; exports.AiConnectionTypeCard = _chunkJ37GJKCBjs.AiConnectionTypeCard; exports.AiConnectionsContainer = _chunkJ37GJKCBjs.AiConnectionsContainer; exports.AiConnectionsProvider = _chunkJ37GJKCBjs.AiConnectionsProvider; exports.Alert = _chunkJ37GJKCBjs.Alert; exports.AlertAction = _chunkJ37GJKCBjs.AlertAction; exports.AlertDescription = _chunkJ37GJKCBjs.AlertDescription; exports.AlertDialog = _chunkJ37GJKCBjs.AlertDialog; exports.AlertDialogAction = _chunkJ37GJKCBjs.AlertDialogAction; exports.AlertDialogCancel = _chunkJ37GJKCBjs.AlertDialogCancel; exports.AlertDialogContent = _chunkJ37GJKCBjs.AlertDialogContent; exports.AlertDialogDescription = _chunkJ37GJKCBjs.AlertDialogDescription; exports.AlertDialogFooter = _chunkJ37GJKCBjs.AlertDialogFooter; exports.AlertDialogHeader = _chunkJ37GJKCBjs.AlertDialogHeader; exports.AlertDialogMedia = _chunkJ37GJKCBjs.AlertDialogMedia; exports.AlertDialogOverlay = _chunkJ37GJKCBjs.AlertDialogOverlay; exports.AlertDialogPortal = _chunkJ37GJKCBjs.AlertDialogPortal; exports.AlertDialogTitle = _chunkJ37GJKCBjs.AlertDialogTitle; exports.AlertDialogTrigger = _chunkJ37GJKCBjs.AlertDialogTrigger; exports.AlertTitle = _chunkJ37GJKCBjs.AlertTitle; exports.AllUsersListContainer = _chunkJ37GJKCBjs.AllUsersListContainer; exports.AllowedUsersDetails = _chunkJ37GJKCBjs.AllowedUsersDetails; exports.ApprovalActionCard = _chunkJ37GJKCBjs.ApprovalActionCard; exports.AssistantBlockNoteComposer = _chunkJ37GJKCBjs.AssistantBlockNoteComposer; exports.AssistantComposer = _chunkJ37GJKCBjs.AssistantComposer; exports.AssistantContainer = _chunkJ37GJKCBjs.AssistantContainer; exports.AssistantContainerWithApprovals = _chunkJ37GJKCBjs.AssistantContainerWithApprovals; exports.AssistantPageContainer = _chunkJ37GJKCBjs.AssistantPageContainer; exports.AssistantThread = _chunkJ37GJKCBjs.AssistantThread; exports.AttributeElement = _chunkJ37GJKCBjs.AttributeElement; exports.AuthContainer = _chunkJ37GJKCBjs.AuthContainer; exports.Avatar = _chunkJ37GJKCBjs.Avatar; exports.AvatarBadge = _chunkJ37GJKCBjs.AvatarBadge; exports.AvatarFallback = _chunkJ37GJKCBjs.AvatarFallback; exports.AvatarGroup = _chunkJ37GJKCBjs.AvatarGroup; exports.AvatarGroupCount = _chunkJ37GJKCBjs.AvatarGroupCount; exports.AvatarImage = _chunkJ37GJKCBjs.AvatarImage; exports.BackupCodesDialog = _chunkJ37GJKCBjs.BackupCodesDialog; exports.Badge = _chunkJ37GJKCBjs.Badge; exports.BlockNoteEditorContainer = _chunkJ37GJKCBjs.BlockNoteEditorContainer; exports.BlockNoteEditorMentionHoverCard = _chunkJ37GJKCBjs.BlockNoteEditorMentionHoverCard; exports.BlockNoteEditorMentionSuggestionMenu = _chunkJ37GJKCBjs.BlockNoteEditorMentionSuggestionMenu; exports.BlockNoteStaticViewer = _chunkJ37GJKCBjs.BlockNoteStaticViewer; exports.BlockNoteViewerContainer = _chunkJ37GJKCBjs.BlockNoteViewerContainer; exports.Board = _chunkJ37GJKCBjs.KanbanBoard; exports.Breadcrumb = _chunkJ37GJKCBjs.Breadcrumb; exports.BreadcrumbEllipsis = _chunkJ37GJKCBjs.BreadcrumbEllipsis; exports.BreadcrumbItem = _chunkJ37GJKCBjs.BreadcrumbItem; exports.BreadcrumbLink = _chunkJ37GJKCBjs.BreadcrumbLink; exports.BreadcrumbList = _chunkJ37GJKCBjs.BreadcrumbList; exports.BreadcrumbNavigation = _chunkJ37GJKCBjs.BreadcrumbNavigation; exports.BreadcrumbPage = _chunkJ37GJKCBjs.BreadcrumbPage; exports.BreadcrumbSeparator = _chunkJ37GJKCBjs.BreadcrumbSeparator; exports.Button = _chunkJ37GJKCBjs.Button; exports.CREDIT_WARNING_DISMISS_SEGMENT = _chunk5XP5G45Bjs.CREDIT_WARNING_DISMISS_SEGMENT; exports.Calendar = _chunkJ37GJKCBjs.Calendar; exports.CalendarDayButton = _chunkJ37GJKCBjs.CalendarDayButton; exports.Card = _chunkJ37GJKCBjs.Card; exports.CardAction = _chunkJ37GJKCBjs.CardAction; exports.CardContent = _chunkJ37GJKCBjs.CardContent; exports.CardDescription = _chunkJ37GJKCBjs.CardDescription; exports.CardFooter = _chunkJ37GJKCBjs.CardFooter; exports.CardHeader = _chunkJ37GJKCBjs.CardHeader; exports.CardTitle = _chunkJ37GJKCBjs.CardTitle; exports.Carousel = _chunkJ37GJKCBjs.Carousel; exports.CarouselContent = _chunkJ37GJKCBjs.CarouselContent; exports.CarouselItem = _chunkJ37GJKCBjs.CarouselItem; exports.CarouselNext = _chunkJ37GJKCBjs.CarouselNext; exports.CarouselPrevious = _chunkJ37GJKCBjs.CarouselPrevious; exports.ChartContainer = _chunkJ37GJKCBjs.ChartContainer; exports.ChartLegend = _chunkJ37GJKCBjs.ChartLegend; exports.ChartLegendContent = _chunkJ37GJKCBjs.ChartLegendContent; exports.ChartStyle = _chunkJ37GJKCBjs.ChartStyle; exports.ChartTooltip = _chunkJ37GJKCBjs.ChartTooltip; exports.ChartTooltipContent = _chunkJ37GJKCBjs.ChartTooltipContent; exports.Checkbox = _chunkJ37GJKCBjs.Checkbox; exports.Collapsible = _chunkJ37GJKCBjs.Collapsible; exports.CollapsibleContent = _chunkJ37GJKCBjs.CollapsibleContent; exports.CollapsibleTrigger = _chunkJ37GJKCBjs.CollapsibleTrigger; exports.Column = _chunkJ37GJKCBjs.KanbanColumn; exports.ColumnHandle = _chunkJ37GJKCBjs.KanbanColumnHandle; exports.Combobox = _chunkJ37GJKCBjs.Combobox; exports.ComboboxChip = _chunkJ37GJKCBjs.ComboboxChip; exports.ComboboxChips = _chunkJ37GJKCBjs.ComboboxChips; exports.ComboboxChipsInput = _chunkJ37GJKCBjs.ComboboxChipsInput; exports.ComboboxCollection = _chunkJ37GJKCBjs.ComboboxCollection; exports.ComboboxContent = _chunkJ37GJKCBjs.ComboboxContent; exports.ComboboxEmpty = _chunkJ37GJKCBjs.ComboboxEmpty; exports.ComboboxGroup = _chunkJ37GJKCBjs.ComboboxGroup; exports.ComboboxInput = _chunkJ37GJKCBjs.ComboboxInput; exports.ComboboxItem = _chunkJ37GJKCBjs.ComboboxItem; exports.ComboboxLabel = _chunkJ37GJKCBjs.ComboboxLabel; exports.ComboboxList = _chunkJ37GJKCBjs.ComboboxList; exports.ComboboxSeparator = _chunkJ37GJKCBjs.ComboboxSeparator; exports.ComboboxTrigger = _chunkJ37GJKCBjs.ComboboxTrigger; exports.ComboboxValue = _chunkJ37GJKCBjs.ComboboxValue; exports.Command = _chunkJ37GJKCBjs.Command; exports.CommandDialog = _chunkJ37GJKCBjs.CommandDialog; exports.CommandEmpty = _chunkJ37GJKCBjs.CommandEmpty; exports.CommandGroup = _chunkJ37GJKCBjs.CommandGroup; exports.CommandInput = _chunkJ37GJKCBjs.CommandInput; exports.CommandItem = _chunkJ37GJKCBjs.CommandItem; exports.CommandList = _chunkJ37GJKCBjs.CommandList; exports.CommandSeparator = _chunkJ37GJKCBjs.CommandSeparator; exports.CommandShortcut = _chunkJ37GJKCBjs.CommandShortcut; exports.CommonAddTrigger = _chunkJ37GJKCBjs.CommonAddTrigger; exports.CommonAssociationCommandDialog = _chunkJ37GJKCBjs.CommonAssociationCommandDialog; exports.CommonAssociationTrigger = _chunkJ37GJKCBjs.CommonAssociationTrigger; exports.CommonDeleter = _chunkJ37GJKCBjs.CommonDeleter; exports.CommonEditorButtons = _chunkJ37GJKCBjs.CommonEditorButtons; exports.CommonEditorDiscardDialog = _chunkJ37GJKCBjs.CommonEditorDiscardDialog; exports.CommonEditorHeader = _chunkJ37GJKCBjs.CommonEditorHeader; exports.CommonEditorTrigger = _chunkJ37GJKCBjs.CommonEditorTrigger; exports.CompaniesList = _chunkJ37GJKCBjs.CompaniesList; exports.CompaniesListContainer = _chunkJ37GJKCBjs.CompaniesListContainer; exports.CompanyConfigurationEditor = _chunkJ37GJKCBjs.CompanyConfigurationEditor; exports.CompanyContainer = _chunkJ37GJKCBjs.CompanyContainer; exports.CompanyContent = _chunkJ37GJKCBjs.CompanyContent; exports.CompanyDeleter = _chunkJ37GJKCBjs.CompanyDeleter; exports.CompanyDetails = _chunkJ37GJKCBjs.CompanyDetails; exports.CompanyEditor = _chunkJ37GJKCBjs.CompanyEditor; exports.CompanyUsersList = _chunkJ37GJKCBjs.CompanyUsersList; exports.ConfirmDialog = _chunkJ37GJKCBjs.ConfirmDialog; exports.ContentListGrid = _chunkJ37GJKCBjs.ContentListGrid; exports.ContentListTable = _chunkJ37GJKCBjs.ContentListTable; exports.ContentTableSearch = _chunkJ37GJKCBjs.ContentTableSearch; exports.ContentTitle = _chunkJ37GJKCBjs.ContentTitle; exports.ContentsList = _chunkJ37GJKCBjs.ContentsList; exports.ContentsListById = _chunkJ37GJKCBjs.ContentsListById; exports.ContextMenu = _chunkJ37GJKCBjs.ContextMenu; exports.ContextMenuCheckboxItem = _chunkJ37GJKCBjs.ContextMenuCheckboxItem; exports.ContextMenuContent = _chunkJ37GJKCBjs.ContextMenuContent; exports.ContextMenuGroup = _chunkJ37GJKCBjs.ContextMenuGroup; exports.ContextMenuItem = _chunkJ37GJKCBjs.ContextMenuItem; exports.ContextMenuLabel = _chunkJ37GJKCBjs.ContextMenuLabel; exports.ContextMenuPortal = _chunkJ37GJKCBjs.ContextMenuPortal; exports.ContextMenuRadioGroup = _chunkJ37GJKCBjs.ContextMenuRadioGroup; exports.ContextMenuRadioItem = _chunkJ37GJKCBjs.ContextMenuRadioItem; exports.ContextMenuSeparator = _chunkJ37GJKCBjs.ContextMenuSeparator; exports.ContextMenuShortcut = _chunkJ37GJKCBjs.ContextMenuShortcut; exports.ContextMenuSub = _chunkJ37GJKCBjs.ContextMenuSub; exports.ContextMenuSubContent = _chunkJ37GJKCBjs.ContextMenuSubContent; exports.ContextMenuSubTrigger = _chunkJ37GJKCBjs.ContextMenuSubTrigger; exports.ContextMenuTrigger = _chunkJ37GJKCBjs.ContextMenuTrigger; exports.ContributorsList = _chunkJ37GJKCBjs.ContributorsList; exports.Cookies = _chunkJ37GJKCBjs.Cookies; exports.CreditWarningBanner = _chunkJ37GJKCBjs.CreditWarningBanner; exports.CurrencyInput = _chunkJ37GJKCBjs.CurrencyInput; exports.DatePickerPopover = _chunkJ37GJKCBjs.DatePickerPopover; exports.DateRangeSelector = _chunkJ37GJKCBjs.DateRangeSelector; exports.DetailField = _chunkJ37GJKCBjs.DetailField; exports.Dialog = _chunkJ37GJKCBjs.Dialog; exports.DialogClose = _chunkJ37GJKCBjs.DialogClose; exports.DialogContent = _chunkJ37GJKCBjs.DialogContent; exports.DialogDescription = _chunkJ37GJKCBjs.DialogDescription; exports.DialogFooter = _chunkJ37GJKCBjs.DialogFooter; exports.DialogHeader = _chunkJ37GJKCBjs.DialogHeader; exports.DialogOverlay = _chunkJ37GJKCBjs.DialogOverlay; exports.DialogPortal = _chunkJ37GJKCBjs.DialogPortal; exports.DialogTitle = _chunkJ37GJKCBjs.DialogTitle; exports.DialogTrigger = _chunkJ37GJKCBjs.DialogTrigger; exports.DisableTwoFactorDialog = _chunkJ37GJKCBjs.DisableTwoFactorDialog; exports.Drawer = _chunkJ37GJKCBjs.Drawer; exports.DrawerClose = _chunkJ37GJKCBjs.DrawerClose; exports.DrawerContent = _chunkJ37GJKCBjs.DrawerContent; exports.DrawerDescription = _chunkJ37GJKCBjs.DrawerDescription; exports.DrawerFooter = _chunkJ37GJKCBjs.DrawerFooter; exports.DrawerHeader = _chunkJ37GJKCBjs.DrawerHeader; exports.DrawerOverlay = _chunkJ37GJKCBjs.DrawerOverlay; exports.DrawerPortal = _chunkJ37GJKCBjs.DrawerPortal; exports.DrawerTitle = _chunkJ37GJKCBjs.DrawerTitle; exports.DrawerTrigger = _chunkJ37GJKCBjs.DrawerTrigger; exports.DropdownMenu = _chunkJ37GJKCBjs.DropdownMenu; exports.DropdownMenuCheckboxItem = _chunkJ37GJKCBjs.DropdownMenuCheckboxItem; exports.DropdownMenuContent = _chunkJ37GJKCBjs.DropdownMenuContent; exports.DropdownMenuGroup = _chunkJ37GJKCBjs.DropdownMenuGroup; exports.DropdownMenuItem = _chunkJ37GJKCBjs.DropdownMenuItem; exports.DropdownMenuLabel = _chunkJ37GJKCBjs.DropdownMenuLabel; exports.DropdownMenuPortal = _chunkJ37GJKCBjs.DropdownMenuPortal; exports.DropdownMenuRadioGroup = _chunkJ37GJKCBjs.DropdownMenuRadioGroup; exports.DropdownMenuRadioItem = _chunkJ37GJKCBjs.DropdownMenuRadioItem; exports.DropdownMenuSeparator = _chunkJ37GJKCBjs.DropdownMenuSeparator; exports.DropdownMenuShortcut = _chunkJ37GJKCBjs.DropdownMenuShortcut; exports.DropdownMenuSub = _chunkJ37GJKCBjs.DropdownMenuSub; exports.DropdownMenuSubContent = _chunkJ37GJKCBjs.DropdownMenuSubContent; exports.DropdownMenuSubTrigger = _chunkJ37GJKCBjs.DropdownMenuSubTrigger; exports.DropdownMenuTrigger = _chunkJ37GJKCBjs.DropdownMenuTrigger; exports.EditableAvatar = _chunkJ37GJKCBjs.EditableAvatar; exports.EditorSheet = _chunkJ37GJKCBjs.EditorSheet; exports.EmailBlastContainer = _chunkJ37GJKCBjs.EmailBlastContainer; exports.EmailBlastEditor = _chunkJ37GJKCBjs.EmailBlastEditor; exports.EmailBlastSendDialog = _chunkJ37GJKCBjs.EmailBlastSendDialog; exports.EmailBlastsList = _chunkJ37GJKCBjs.EmailBlastsList; exports.EmailBlastsListContainer = _chunkJ37GJKCBjs.EmailBlastsListContainer; exports.EmptyState = _chunkJ37GJKCBjs.EmptyState; exports.EntityAvatar = _chunkJ37GJKCBjs.EntityAvatar; exports.EntityHero = _chunkJ37GJKCBjs.EntityHero; exports.EntityHeroAvatar = _chunkJ37GJKCBjs.EntityHeroAvatar; exports.EntityHeroLayout = _chunkJ37GJKCBjs.EntityHeroLayout; exports.EntityHeroMetaRow = _chunkJ37GJKCBjs.EntityHeroMetaRow; exports.EntityMentionLink = _chunkJ37GJKCBjs.EntityMentionLink; exports.EntityMultiSelector = _chunkJ37GJKCBjs.EntityMultiSelector; exports.EntitySection = _chunkJ37GJKCBjs.EntitySection; exports.EntitySelector = _chunkJ37GJKCBjs.EntitySelector; exports.ErrorDetails = _chunkJ37GJKCBjs.ErrorDetails; exports.Field = _chunkJ37GJKCBjs.Field; exports.FieldContent = _chunkJ37GJKCBjs.FieldContent; exports.FieldDescription = _chunkJ37GJKCBjs.FieldDescription; exports.FieldError = _chunkJ37GJKCBjs.FieldError; exports.FieldGroup = _chunkJ37GJKCBjs.FieldGroup; exports.FieldLabel = _chunkJ37GJKCBjs.FieldLabel; exports.FieldLegend = _chunkJ37GJKCBjs.FieldLegend; exports.FieldSeparator = _chunkJ37GJKCBjs.FieldSeparator; exports.FieldSet = _chunkJ37GJKCBjs.FieldSet; exports.FieldTitle = _chunkJ37GJKCBjs.FieldTitle; exports.FileInput = _chunkJ37GJKCBjs.FileInput; exports.FileUploader = _chunkJ37GJKCBjs.FileUploader; exports.FileUploaderContent = _chunkJ37GJKCBjs.FileUploaderContent; exports.FileUploaderItem = _chunkJ37GJKCBjs.FileUploaderItem; exports.FiscalDataDisplay = _chunkJ37GJKCBjs.FiscalDataDisplay; exports.ForgotPassword = _chunkJ37GJKCBjs.ForgotPassword; exports.Form = _chunkJ37GJKCBjs.Form; exports.FormBlockNote = _chunkJ37GJKCBjs.FormBlockNote; exports.FormBody = _chunkJ37GJKCBjs.FormBody; exports.FormCheckbox = _chunkJ37GJKCBjs.FormCheckbox; exports.FormCol = _chunkJ37GJKCBjs.FormCol; exports.FormDate = _chunkJ37GJKCBjs.FormDate; exports.FormDateTime = _chunkJ37GJKCBjs.FormDateTime; exports.FormFeatures = _chunkJ37GJKCBjs.FormFeatures; exports.FormFieldWrapper = _chunkJ37GJKCBjs.FormFieldWrapper; exports.FormInput = _chunkJ37GJKCBjs.FormInput; exports.FormPassword = _chunkJ37GJKCBjs.FormPassword; exports.FormPlaceAutocomplete = _chunkJ37GJKCBjs.FormPlaceAutocomplete; exports.FormRoles = _chunkJ37GJKCBjs.FormRoles; exports.FormRow = _chunkJ37GJKCBjs.FormRow; exports.FormSection = _chunkJ37GJKCBjs.FormSection; exports.FormSelect = _chunkJ37GJKCBjs.FormSelect; exports.FormSlider = _chunkJ37GJKCBjs.FormSlider; exports.FormSwitch = _chunkJ37GJKCBjs.FormSwitch; exports.FormTextarea = _chunkJ37GJKCBjs.FormTextarea; exports.GdprConsentCheckbox = _chunkJ37GJKCBjs.GdprConsentCheckbox; exports.GdprConsentSection = _chunkJ37GJKCBjs.GdprConsentSection; exports.HEADER_ROW_MIN_H = _chunkJ37GJKCBjs.HEADER_ROW_MIN_H; exports.HandbookAdminContainer = _chunkJ37GJKCBjs.HandbookAdminContainer; exports.HandbookAskContainer = _chunkJ37GJKCBjs.HandbookAskContainer; exports.HandbookAskSheet = _chunkJ37GJKCBjs.HandbookAskSheet; exports.HandbookContents = _chunkJ37GJKCBjs.HandbookContents; exports.HandbookIndexStatus = _chunkJ37GJKCBjs.HandbookIndexStatus; exports.HandbookPageContainer = _chunkJ37GJKCBjs.HandbookPageContainer; exports.HandbookPageDetails = _chunkJ37GJKCBjs.HandbookPageDetails; exports.HandbookPageNavigator = _chunkJ37GJKCBjs.HandbookPageNavigator; exports.HandbookPageNeighbours = _chunkJ37GJKCBjs.HandbookPageNeighbours; exports.HandbookPageToc = _chunkJ37GJKCBjs.HandbookPageToc; exports.HandbookSectionGroup = _chunkJ37GJKCBjs.HandbookSectionGroup; exports.HandbookSyncButton = _chunkJ37GJKCBjs.HandbookSyncButton; exports.Header = _chunkJ37GJKCBjs.Header; exports.HoverCard = _chunkJ37GJKCBjs.HoverCard; exports.HoverCardContent = _chunkJ37GJKCBjs.HoverCardContent; exports.HoverCardTrigger = _chunkJ37GJKCBjs.HoverCardTrigger; exports.HowToCommand = _chunkJ37GJKCBjs.HowToCommand; exports.HowToCommandViewer = _chunkJ37GJKCBjs.HowToCommandViewer; exports.HowToContainer = _chunkJ37GJKCBjs.HowToContainer; exports.HowToContent = _chunkJ37GJKCBjs.HowToContent; exports.HowToDeleter = _chunkJ37GJKCBjs.HowToDeleter; exports.HowToDetails = _chunkJ37GJKCBjs.HowToDetails; exports.HowToEditor = _chunkJ37GJKCBjs.HowToEditor; exports.HowToList = _chunkJ37GJKCBjs.HowToList; exports.HowToListContainer = _chunkJ37GJKCBjs.HowToListContainer; exports.HowToMultiSelector = _chunkJ37GJKCBjs.HowToMultiSelector; exports.HowToReindexButton = _chunkJ37GJKCBjs.HowToReindexButton; exports.HowToSelector = _chunkJ37GJKCBjs.HowToSelector; exports.Input = _chunkJ37GJKCBjs.Input; exports.InputGroup = _chunkJ37GJKCBjs.InputGroup; exports.InputGroupAddon = _chunkJ37GJKCBjs.InputGroupAddon; exports.InputGroupButton = _chunkJ37GJKCBjs.InputGroupButton; exports.InputGroupInput = _chunkJ37GJKCBjs.InputGroupInput; exports.InputGroupText = _chunkJ37GJKCBjs.InputGroupText; exports.InputGroupTextarea = _chunkJ37GJKCBjs.InputGroupTextarea; exports.InputOTP = _chunkJ37GJKCBjs.InputOTP; exports.InputOTPGroup = _chunkJ37GJKCBjs.InputOTPGroup; exports.InputOTPSeparator = _chunkJ37GJKCBjs.InputOTPSeparator; exports.InputOTPSlot = _chunkJ37GJKCBjs.InputOTPSlot; exports.ItalianFiscalData = _chunkJ37GJKCBjs.ItalianFiscalData_default; exports.ItalianFiscalDataDisplay = _chunkJ37GJKCBjs.ItalianFiscalDataDisplay; exports.Item = _chunkJ37GJKCBjs.KanbanItem; exports.ItemHandle = _chunkJ37GJKCBjs.KanbanItemHandle; exports.Kanban = _chunkJ37GJKCBjs.KanbanRoot; exports.KanbanBoard = _chunkJ37GJKCBjs.KanbanBoard; exports.KanbanColumn = _chunkJ37GJKCBjs.KanbanColumn; exports.KanbanColumnHandle = _chunkJ37GJKCBjs.KanbanColumnHandle; exports.KanbanItem = _chunkJ37GJKCBjs.KanbanItem; exports.KanbanItemHandle = _chunkJ37GJKCBjs.KanbanItemHandle; exports.KanbanOverlay = _chunkJ37GJKCBjs.KanbanOverlay; exports.Label = _chunkJ37GJKCBjs.Label; exports.LandingComponent = _chunkJ37GJKCBjs.LandingComponent; exports.Link = _chunkJ37GJKCBjs.Link; exports.Login = _chunkJ37GJKCBjs.Login; exports.Logout = _chunkJ37GJKCBjs.Logout; exports.MermaidDiagram = _chunkJ37GJKCBjs.MermaidDiagram; exports.MessageItem = _chunkJ37GJKCBjs.MessageItem; exports.MessageList = _chunkJ37GJKCBjs.MessageList; exports.MessageSourcesPanel = _chunkJ37GJKCBjs.MessageSourcesPanel; exports.MicroLabel = _chunkJ37GJKCBjs.MicroLabel; exports.MobileNavigationBar = _chunkJ37GJKCBjs.MobileNavigationBar; exports.ModeToggleSwitch = _chunkJ37GJKCBjs.ModeToggleSwitch; exports.MultiFileUploader = _chunkJ37GJKCBjs.MultiFileUploader; exports.MultiSelect = _chunkJ37GJKCBjs.MultiSelect; exports.MultipleSelector = _chunkJ37GJKCBjs.MultipleSelector; exports.NavigationMenu = _chunkJ37GJKCBjs.NavigationMenu; exports.NavigationMenuContent = _chunkJ37GJKCBjs.NavigationMenuContent; exports.NavigationMenuIndicator = _chunkJ37GJKCBjs.NavigationMenuIndicator; exports.NavigationMenuItem = _chunkJ37GJKCBjs.NavigationMenuItem; exports.NavigationMenuLink = _chunkJ37GJKCBjs.NavigationMenuLink; exports.NavigationMenuList = _chunkJ37GJKCBjs.NavigationMenuList; exports.NavigationMenuPositioner = _chunkJ37GJKCBjs.NavigationMenuPositioner; exports.NavigationMenuTrigger = _chunkJ37GJKCBjs.NavigationMenuTrigger; exports.NotificationErrorBoundary = _chunkJ37GJKCBjs.NotificationErrorBoundary; exports.NotificationIcon = _chunkJ37GJKCBjs.NotificationIcon; exports.NotificationMenuItem = _chunkJ37GJKCBjs.NotificationMenuItem; exports.NotificationModal = _chunkJ37GJKCBjs.NotificationModal; exports.NotificationToast = _chunkJ37GJKCBjs.NotificationToast; exports.NotificationViewSwitcher = _chunkJ37GJKCBjs.NotificationViewSwitcher; exports.NotificationsList = _chunkJ37GJKCBjs.NotificationsList; exports.NotificationsListContainer = _chunkJ37GJKCBjs.NotificationsListContainer; exports.OAuthClientCard = _chunkJ37GJKCBjs.OAuthClientCard; exports.OAuthClientDetail = _chunkJ37GJKCBjs.OAuthClientDetail; exports.OAuthClientForm = _chunkJ37GJKCBjs.OAuthClientForm; exports.OAuthClientList = _chunkJ37GJKCBjs.OAuthClientList; exports.OAuthClientSecretDisplay = _chunkJ37GJKCBjs.OAuthClientSecretDisplay; exports.OAuthCompanySelector = _chunkJ37GJKCBjs.OAuthCompanySelector; exports.OAuthConsentActions = _chunkJ37GJKCBjs.OAuthConsentActions; exports.OAuthConsentHeader = _chunkJ37GJKCBjs.OAuthConsentHeader; exports.OAuthConsentScreen = _chunkJ37GJKCBjs.OAuthConsentScreen; exports.OAuthRedirectUriInput = _chunkJ37GJKCBjs.OAuthRedirectUriInput; exports.OAuthScopeList = _chunkJ37GJKCBjs.OAuthScopeList; exports.OAuthScopeSelector = _chunkJ37GJKCBjs.OAuthScopeSelector; exports.OnboardingCard = _chunkJ37GJKCBjs.OnboardingCard; exports.Overlay = _chunkJ37GJKCBjs.KanbanOverlay; exports.PageContainer = _chunkJ37GJKCBjs.PageContainer; exports.PageContainerContentDetails = _chunkJ37GJKCBjs.PageContainerContentDetails; exports.PageContentContainer = _chunkJ37GJKCBjs.PageContentContainer; exports.PageSection = _chunkJ37GJKCBjs.PageSection; exports.PasskeyButton = _chunkJ37GJKCBjs.PasskeyButton; exports.PasskeyList = _chunkJ37GJKCBjs.PasskeyList; exports.PasskeySetupDialog = _chunkJ37GJKCBjs.PasskeySetupDialog; exports.PasswordInput = _chunkJ37GJKCBjs.PasswordInput; exports.PlatformUsersContainer = _chunkJ37GJKCBjs.PlatformUsersContainer; exports.PlatformUsersList = _chunkJ37GJKCBjs.PlatformUsersList; exports.Popover = _chunkJ37GJKCBjs.Popover; exports.PopoverContent = _chunkJ37GJKCBjs.PopoverContent; exports.PopoverDescription = _chunkJ37GJKCBjs.PopoverDescription; exports.PopoverHeader = _chunkJ37GJKCBjs.PopoverHeader; exports.PopoverTitle = _chunkJ37GJKCBjs.PopoverTitle; exports.PopoverTrigger = _chunkJ37GJKCBjs.PopoverTrigger; exports.Progress = _chunkJ37GJKCBjs.Progress; exports.ProgressIndicator = _chunkJ37GJKCBjs.ProgressIndicator; exports.ProgressLabel = _chunkJ37GJKCBjs.ProgressLabel; exports.ProgressTrack = _chunkJ37GJKCBjs.ProgressTrack; exports.ProgressValue = _chunkJ37GJKCBjs.ProgressValue; exports.PushNotificationProvider = _chunkJ37GJKCBjs.PushNotificationProvider; exports.RadioGroup = _chunkJ37GJKCBjs.RadioGroup; exports.RadioGroupItem = _chunkJ37GJKCBjs.RadioGroupItem; exports.RbacByRoleContainer = _chunkJ37GJKCBjs.RbacByRoleContainer; exports.RbacContainer = _chunkJ37GJKCBjs.RbacContainer; exports.RbacPermissionCell = _chunkJ37GJKCBjs.RbacPermissionCell; exports.RbacPermissionPicker = _chunkJ37GJKCBjs.RbacPermissionPicker; exports.ReactMarkdownContainer = _chunkJ37GJKCBjs.ReactMarkdownContainer; exports.RecentPagesNavigator = _chunkJ37GJKCBjs.RecentPagesNavigator; exports.ReferralCodeCapture = _chunkJ37GJKCBjs.ReferralCodeCapture; exports.ReferralDialog = _chunkJ37GJKCBjs.ReferralDialog; exports.ReferralWidget = _chunkJ37GJKCBjs.ReferralWidget; exports.ReferralsAdminContainer = _chunkJ37GJKCBjs.ReferralsAdminContainer; exports.ReferralsAdminFunnel = _chunkJ37GJKCBjs.ReferralsAdminFunnel; exports.ReferralsAdminTiles = _chunkJ37GJKCBjs.ReferralsAdminTiles; exports.RefreshUser = _chunkJ37GJKCBjs.RefreshUser; exports.RelevantContentsList = _chunkJ37GJKCBjs.RelevantContentsList; exports.RelevantUsersList = _chunkJ37GJKCBjs.RelevantUsersList; exports.RemoveUserFromRole = _chunkJ37GJKCBjs.RemoveUserFromRole; exports.ResetPassword = _chunkJ37GJKCBjs.ResetPassword; exports.ResizableHandle = _chunkJ37GJKCBjs.ResizableHandle; exports.ResizablePanel = _chunkJ37GJKCBjs.ResizablePanel; exports.ResizablePanelGroup = _chunkJ37GJKCBjs.ResizablePanelGroup; exports.RoleContainer = _chunkJ37GJKCBjs.RoleContainer; exports.RoleDetails = _chunkJ37GJKCBjs.RoleDetails; exports.RoleUsersList = _chunkJ37GJKCBjs.RoleUsersList; exports.RolesList = _chunkJ37GJKCBjs.RolesList; exports.Root = _chunkJ37GJKCBjs.KanbanRoot; exports.RoundPageContainer = _chunkJ37GJKCBjs.RoundPageContainer; exports.RoundPageContainerTitle = _chunkJ37GJKCBjs.RoundPageContainerTitle; exports.ScrollArea = _chunkJ37GJKCBjs.ScrollArea; exports.ScrollBar = _chunkJ37GJKCBjs.ScrollBar; exports.SectionHeader = _chunkJ37GJKCBjs.SectionHeader; exports.SecurityContainer = _chunkJ37GJKCBjs.SecurityContainer; exports.Select = _chunkJ37GJKCBjs.Select; exports.SelectContent = _chunkJ37GJKCBjs.SelectContent; exports.SelectGroup = _chunkJ37GJKCBjs.SelectGroup; exports.SelectItem = _chunkJ37GJKCBjs.SelectItem; exports.SelectLabel = _chunkJ37GJKCBjs.SelectLabel; exports.SelectScrollDownButton = _chunkJ37GJKCBjs.SelectScrollDownButton; exports.SelectScrollUpButton = _chunkJ37GJKCBjs.SelectScrollUpButton; exports.SelectSeparator = _chunkJ37GJKCBjs.SelectSeparator; exports.SelectTrigger = _chunkJ37GJKCBjs.SelectTrigger; exports.SelectValue = _chunkJ37GJKCBjs.SelectValue; exports.Separator = _chunkJ37GJKCBjs.Separator; exports.Sheet = _chunkJ37GJKCBjs.Sheet; exports.SheetClose = _chunkJ37GJKCBjs.SheetClose; exports.SheetContent = _chunkJ37GJKCBjs.SheetContent; exports.SheetDescription = _chunkJ37GJKCBjs.SheetDescription; exports.SheetFooter = _chunkJ37GJKCBjs.SheetFooter; exports.SheetHeader = _chunkJ37GJKCBjs.SheetHeader; exports.SheetTitle = _chunkJ37GJKCBjs.SheetTitle; exports.SheetTrigger = _chunkJ37GJKCBjs.SheetTrigger; exports.Sidebar = _chunkJ37GJKCBjs.Sidebar; exports.SidebarContent = _chunkJ37GJKCBjs.SidebarContent; exports.SidebarFooter = _chunkJ37GJKCBjs.SidebarFooter; exports.SidebarGroup = _chunkJ37GJKCBjs.SidebarGroup; exports.SidebarGroupAction = _chunkJ37GJKCBjs.SidebarGroupAction; exports.SidebarGroupContent = _chunkJ37GJKCBjs.SidebarGroupContent; exports.SidebarGroupLabel = _chunkJ37GJKCBjs.SidebarGroupLabel; exports.SidebarHeader = _chunkJ37GJKCBjs.SidebarHeader; exports.SidebarInput = _chunkJ37GJKCBjs.SidebarInput; exports.SidebarInset = _chunkJ37GJKCBjs.SidebarInset; exports.SidebarMenu = _chunkJ37GJKCBjs.SidebarMenu; exports.SidebarMenuAction = _chunkJ37GJKCBjs.SidebarMenuAction; exports.SidebarMenuBadge = _chunkJ37GJKCBjs.SidebarMenuBadge; exports.SidebarMenuButton = _chunkJ37GJKCBjs.SidebarMenuButton; exports.SidebarMenuItem = _chunkJ37GJKCBjs.SidebarMenuItem; exports.SidebarMenuSkeleton = _chunkJ37GJKCBjs.SidebarMenuSkeleton; exports.SidebarMenuSub = _chunkJ37GJKCBjs.SidebarMenuSub; exports.SidebarMenuSubButton = _chunkJ37GJKCBjs.SidebarMenuSubButton; exports.SidebarMenuSubItem = _chunkJ37GJKCBjs.SidebarMenuSubItem; exports.SidebarProvider = _chunkJ37GJKCBjs.SidebarProvider; exports.SidebarRail = _chunkJ37GJKCBjs.SidebarRail; exports.SidebarSeparator = _chunkJ37GJKCBjs.SidebarSeparator; exports.SidebarTrigger = _chunkJ37GJKCBjs.SidebarTrigger; exports.SignupSourceCapture = _chunkJ37GJKCBjs.SignupSourceCapture; exports.Skeleton = _chunkJ37GJKCBjs.Skeleton; exports.Slider = _chunkJ37GJKCBjs.Slider; exports.Spinner = _chunkJ37GJKCBjs.Spinner; exports.Switch = _chunkJ37GJKCBjs.Switch; exports.Table = _chunkJ37GJKCBjs.Table; exports.TableBody = _chunkJ37GJKCBjs.TableBody; exports.TableCaption = _chunkJ37GJKCBjs.TableCaption; exports.TableCell = _chunkJ37GJKCBjs.TableCell; exports.TableCellAvatar = _chunkJ37GJKCBjs.TableCellAvatar; exports.TableFooter = _chunkJ37GJKCBjs.TableFooter; exports.TableHead = _chunkJ37GJKCBjs.TableHead; exports.TableHeader = _chunkJ37GJKCBjs.TableHeader; exports.TableRow = _chunkJ37GJKCBjs.TableRow; exports.Tabs = _chunkJ37GJKCBjs.Tabs; exports.TabsContainer = _chunkJ37GJKCBjs.TabsContainer; exports.TabsContent = _chunkJ37GJKCBjs.TabsContent; exports.TabsList = _chunkJ37GJKCBjs.TabsList; exports.TabsTrigger = _chunkJ37GJKCBjs.TabsTrigger; exports.Textarea = _chunkJ37GJKCBjs.Textarea; exports.Toaster = _chunkJ37GJKCBjs.Toaster; exports.Toggle = _chunkJ37GJKCBjs.Toggle; exports.TokenStatusIndicator = _chunkJ37GJKCBjs.TokenStatusIndicator; exports.Tooltip = _chunkJ37GJKCBjs.Tooltip; exports.TooltipContent = _chunkJ37GJKCBjs.TooltipContent; exports.TooltipProvider = _chunkJ37GJKCBjs.TooltipProvider; exports.TooltipTrigger = _chunkJ37GJKCBjs.TooltipTrigger; exports.TotpAuthenticatorList = _chunkJ37GJKCBjs.TotpAuthenticatorList; exports.TotpInput = _chunkJ37GJKCBjs.TotpInput; exports.TotpSetupDialog = _chunkJ37GJKCBjs.TotpSetupDialog; exports.TwoFactorChallenge = _chunkJ37GJKCBjs.TwoFactorChallenge; exports.TwoFactorSettings = _chunkJ37GJKCBjs.TwoFactorSettings; exports.UserAvatar = _chunkJ37GJKCBjs.UserAvatar; exports.UserAvatarEditor = _chunkJ37GJKCBjs.UserAvatarEditor; exports.UserAvatarList = _chunkJ37GJKCBjs.UserAvatarList; exports.UserContainer = _chunkJ37GJKCBjs.UserContainer; exports.UserContent = _chunkJ37GJKCBjs.UserContent; exports.UserDeleter = _chunkJ37GJKCBjs.UserDeleter; exports.UserEditor = _chunkJ37GJKCBjs.UserEditor; exports.UserIndexContainer = _chunkJ37GJKCBjs.UserIndexContainer; exports.UserIndexDetails = _chunkJ37GJKCBjs.UserIndexDetails; exports.UserListInAdd = _chunkJ37GJKCBjs.UserListInAdd; exports.UserMultiSelect = _chunkJ37GJKCBjs.UserMultiSelect; exports.UserReactivator = _chunkJ37GJKCBjs.UserReactivator; exports.UserResentInvitationEmail = _chunkJ37GJKCBjs.UserResentInvitationEmail; exports.UserRoleAdd = _chunkJ37GJKCBjs.UserRoleAdd; exports.UserRolesList = _chunkJ37GJKCBjs.UserRolesList; exports.UserSearchPopover = _chunkJ37GJKCBjs.UserSearchPopover; exports.UserSelector = _chunkJ37GJKCBjs.UserSelector; exports.UserStanadaloneDetails = _chunkJ37GJKCBjs.UserStanadaloneDetails; exports.UsersList = _chunkJ37GJKCBjs.UsersList; exports.UsersListByContentIds = _chunkJ37GJKCBjs.UsersListByContentIds; exports.UsersListContainer = _chunkJ37GJKCBjs.UsersListContainer; exports.WaitlistConfirmation = _chunkJ37GJKCBjs.WaitlistConfirmation; exports.WaitlistForm = _chunkJ37GJKCBjs.WaitlistForm; exports.WaitlistHeroSection = _chunkJ37GJKCBjs.WaitlistHeroSection; exports.WaitlistList = _chunkJ37GJKCBjs.WaitlistList; exports.WaitlistQuestionnaireRenderer = _chunkJ37GJKCBjs.WaitlistQuestionnaireRenderer; exports.WaitlistSuccessState = _chunkJ37GJKCBjs.WaitlistSuccessState; exports.badgeVariants = _chunkJ37GJKCBjs.badgeVariants; exports.buttonVariants = _chunkJ37GJKCBjs.buttonVariants; exports.cellComponent = _chunkJ37GJKCBjs.cellComponent; exports.cellDate = _chunkJ37GJKCBjs.cellDate; exports.cellDateTime = _chunkJ37GJKCBjs.cellDateTime; exports.cellId = _chunkJ37GJKCBjs.cellId; exports.cellLink = _chunkJ37GJKCBjs.cellLink; exports.cellUrl = _chunkJ37GJKCBjs.cellUrl; exports.commandFilterByKeywords = _chunkJ37GJKCBjs.commandFilterByKeywords; exports.createMentionInlineContentSpec = _chunkJ37GJKCBjs.createMentionInlineContentSpec; exports.errorToast = _chunkJ37GJKCBjs.errorToast; exports.generateNotificationData = _chunkJ37GJKCBjs.generateNotificationData; exports.getIcon = _chunk5XP5G45Bjs.getIcon; exports.getIconByModule = _chunk5XP5G45Bjs.getIconByModule; exports.getIconByModuleName = _chunk5XP5G45Bjs.getIconByModuleName; exports.getInitials = _chunk5XP5G45Bjs.getInitials; exports.hasOpenInnerLayer = _chunkJ37GJKCBjs.hasOpenInnerLayer; exports.isAccountDeletionEnabled = _chunkJ37GJKCBjs.isAccountDeletionEnabled; exports.isCreditWarningActive = _chunk5XP5G45Bjs.isCreditWarningActive; exports.isDocumentEmpty = _chunkJ37GJKCBjs.isDocumentEmpty; exports.mentionDataAttrs = _chunkJ37GJKCBjs.mentionDataAttrs; exports.navigationMenuTriggerStyle = _chunkJ37GJKCBjs.navigationMenuTriggerStyle; exports.nextDateRange = _chunkJ37GJKCBjs.nextDateRange; exports.parseFiscalData = _chunkJ37GJKCBjs.parseFiscalData; exports.parseMentionElement = _chunkJ37GJKCBjs.parseMentionElement; exports.partitionTabs = _chunkJ37GJKCBjs.partitionTabs; exports.spinnerVariants = _chunkJ37GJKCBjs.spinnerVariants; exports.tabsListVariants = _chunkJ37GJKCBjs.tabsListVariants; exports.toggleVariants = _chunkJ37GJKCBjs.toggleVariants; exports.triggerAssociationToast = _chunkJ37GJKCBjs.triggerAssociationToast; exports.useAiConnections = _chunkJ37GJKCBjs.useAiConnections; exports.useCarousel = _chunkJ37GJKCBjs.useCarousel; exports.useComboboxAnchor = _chunkJ37GJKCBjs.useComboboxAnchor; exports.useDebounce = _chunkJ37GJKCBjs.useDebounce2; exports.useEditorDialog = _chunkJ37GJKCBjs.useEditorDialog; exports.useFileUpload = _chunkJ37GJKCBjs.useFileUpload; exports.useMentionInsert = _chunkJ37GJKCBjs.useMentionInsert; exports.useOptionalSidebar = _chunkJ37GJKCBjs.useOptionalSidebar; exports.useSidebar = _chunkJ37GJKCBjs.useSidebar; exports.useSidebarControls = _chunkJ37GJKCBjs.useSidebarControls;
|
|
1129
1129
|
//# sourceMappingURL=index.js.map
|
|
@@ -540,10 +540,10 @@ import {
|
|
|
540
540
|
useOptionalSidebar,
|
|
541
541
|
useSidebar,
|
|
542
542
|
useSidebarControls
|
|
543
|
-
} from "../chunk-
|
|
543
|
+
} from "../chunk-6DNGLY5Y.mjs";
|
|
544
544
|
import "../chunk-5T2AQMQ2.mjs";
|
|
545
545
|
import "../chunk-VOXD3ZLY.mjs";
|
|
546
|
-
import "../chunk-
|
|
546
|
+
import "../chunk-JL6XL5NK.mjs";
|
|
547
547
|
import "../chunk-PW42LRSL.mjs";
|
|
548
548
|
import {
|
|
549
549
|
AiConnection,
|
|
@@ -556,7 +556,7 @@ import {
|
|
|
556
556
|
getIconByModuleName,
|
|
557
557
|
getInitials,
|
|
558
558
|
isCreditWarningActive
|
|
559
|
-
} from "../chunk-
|
|
559
|
+
} from "../chunk-HNK2O6YE.mjs";
|
|
560
560
|
import "../chunk-RW6XZGZG.mjs";
|
|
561
561
|
import "../chunk-OY65RYD3.mjs";
|
|
562
562
|
import "../chunk-W7U6O3OE.mjs";
|