@carlonicora/nextjs-jsonapi 3.9.0 → 3.11.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-K55A4FS2.css +30 -0
- package/dist/BlockNoteEditor-K55A4FS2.css.map +1 -0
- package/dist/{BlockNoteEditor-RGMU2O24.mjs → BlockNoteEditor-NBHDEZ7W.mjs} +4 -4
- package/dist/{BlockNoteEditor-WY4LFMXQ.js → BlockNoteEditor-XOVNTXDY.js} +19 -19
- package/dist/{BlockNoteEditor-WY4LFMXQ.js.map → BlockNoteEditor-XOVNTXDY.js.map} +1 -1
- package/dist/{BlockNoteViewer-6N2GQWTI.js → BlockNoteViewer-C2UUOBAF.js} +17 -3
- package/dist/BlockNoteViewer-C2UUOBAF.js.map +1 -0
- package/dist/{BlockNoteViewer-IBQRJ3WM.mjs → BlockNoteViewer-TYLVTIUD.mjs} +17 -3
- package/dist/BlockNoteViewer-TYLVTIUD.mjs.map +1 -0
- package/dist/billing/index.css +22 -21
- package/dist/billing/index.css.map +1 -1
- package/dist/billing/index.js +398 -398
- package/dist/billing/index.mjs +3 -3
- package/dist/{chunk-UYLS3LJW.js → chunk-6J2SQZ3G.js} +11 -1
- package/dist/chunk-6J2SQZ3G.js.map +1 -0
- package/dist/{chunk-2D4MFVDV.mjs → chunk-IMSIVIIC.mjs} +2 -2
- package/dist/{chunk-HDZ2BL6D.mjs → chunk-M5QAHSCY.mjs} +11 -1
- package/dist/{chunk-HDZ2BL6D.mjs.map → chunk-M5QAHSCY.mjs.map} +1 -1
- package/dist/{chunk-TULJCLZA.js → chunk-V6CGCARD.js} +7 -7
- package/dist/{chunk-TULJCLZA.js.map → chunk-V6CGCARD.js.map} +1 -1
- package/dist/{chunk-7PNGCZES.mjs → chunk-XNGI4HDZ.mjs} +1529 -1286
- package/dist/chunk-XNGI4HDZ.mjs.map +1 -0
- package/dist/{chunk-DOLEXUO3.js → chunk-YN4LOVL4.js} +1301 -1058
- package/dist/chunk-YN4LOVL4.js.map +1 -0
- package/dist/client/index.css +22 -21
- package/dist/client/index.css.map +1 -1
- package/dist/client/index.js +4 -4
- package/dist/client/index.mjs +3 -3
- package/dist/components/index.css +22 -21
- package/dist/components/index.css.map +1 -1
- package/dist/components/index.d.mts +46 -14
- package/dist/components/index.d.ts +46 -14
- package/dist/components/index.js +8 -4
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +7 -3
- package/dist/contexts/index.css +22 -21
- package/dist/contexts/index.css.map +1 -1
- package/dist/contexts/index.d.mts +28 -4
- package/dist/contexts/index.d.ts +28 -4
- package/dist/contexts/index.js +10 -4
- package/dist/contexts/index.js.map +1 -1
- package/dist/contexts/index.mjs +9 -3
- package/dist/core/index.d.mts +13 -0
- package/dist/core/index.d.ts +13 -0
- package/dist/core/index.js +2 -2
- package/dist/core/index.mjs +1 -1
- package/dist/features/help/index.css +22 -21
- package/dist/features/help/index.css.map +1 -1
- package/dist/features/help/index.d.mts +6 -1
- package/dist/features/help/index.d.ts +6 -1
- package/dist/features/help/index.js +39 -38
- package/dist/features/help/index.js.map +1 -1
- package/dist/features/help/index.mjs +4 -3
- package/dist/features/tokenusage/index.css +22 -21
- package/dist/features/tokenusage/index.css.map +1 -1
- package/dist/features/tokenusage/index.js +102 -102
- package/dist/features/tokenusage/index.js.map +1 -1
- package/dist/features/tokenusage/index.mjs +4 -4
- package/dist/features/tokenusage/index.mjs.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.mjs +2 -2
- package/dist/{onboarding.interface-Djyl9qYu.d.mts → onboarding.interface-DVUOUC4y.d.mts} +4 -1
- package/dist/{onboarding.interface-Djyl9qYu.d.ts → onboarding.interface-DVUOUC4y.d.ts} +4 -1
- package/dist/server/index.js +3 -3
- package/dist/server/index.mjs +1 -1
- package/package.json +2 -2
- package/src/components/containers/RoundPageContainer.tsx +2 -1
- package/src/components/containers/RoundPageContainerTitle.tsx +6 -1
- package/src/components/containers/TabsContainer.tsx +1 -0
- package/src/components/forms/EditorSheet.tsx +2 -1
- package/src/components/grids/ContentListGrid.tsx +1 -1
- package/src/components/navigations/Breadcrumb.tsx +21 -9
- package/src/components/navigations/Header.tsx +3 -1
- package/src/components/navigations/MobileNavigationBar.tsx +1 -0
- package/src/components/tables/ContentListTable.tsx +1 -1
- package/src/components/tables/ContentTableSearch.tsx +1 -0
- package/src/components/viewers/BlockNoteViewer.tsx +13 -2
- package/src/components/viewers/BlockNoteViewerContainer.tsx +4 -1
- package/src/contexts/BreadcrumbRootContext.tsx +28 -0
- package/src/contexts/index.ts +1 -0
- package/src/features/assistant/components/index.ts +2 -0
- package/src/features/assistant/components/parts/AssistantComposer.tsx +1 -1
- package/src/features/assistant/components/parts/__tests__/AssistantComposer.spec.tsx +2 -2
- package/src/features/assistant-action/components/ApprovalActionCard.tsx +325 -4
- package/src/features/assistant-action/components/__tests__/ApprovalActionCard.spec.tsx +268 -0
- package/src/features/assistant-action/data/AssistantAction.ts +12 -0
- package/src/features/assistant-action/data/AssistantActionInterface.ts +9 -0
- package/src/features/assistant-action/data/__tests__/AssistantAction.spec.ts +11 -0
- package/src/features/help/index.ts +1 -0
- package/src/features/onboarding/components/OnboardingCard.tsx +1 -2
- package/src/features/onboarding/contexts/OnboardingContext.spec.tsx +191 -0
- package/src/features/onboarding/contexts/OnboardingContext.tsx +176 -125
- package/src/features/onboarding/interfaces/onboarding.interface.ts +4 -0
- package/src/features/onboarding/styles/onboarding.css +25 -30
- package/src/features/tokenusage/components/TokenUsageReportFilterBar.tsx +1 -1
- package/dist/BlockNoteEditor-YOAJRPWU.css +0 -29
- package/dist/BlockNoteEditor-YOAJRPWU.css.map +0 -1
- package/dist/BlockNoteViewer-6N2GQWTI.js.map +0 -1
- package/dist/BlockNoteViewer-IBQRJ3WM.mjs.map +0 -1
- package/dist/chunk-7PNGCZES.mjs.map +0 -1
- package/dist/chunk-DOLEXUO3.js.map +0 -1
- package/dist/chunk-UYLS3LJW.js.map +0 -1
- /package/dist/{BlockNoteEditor-RGMU2O24.mjs.map → BlockNoteEditor-NBHDEZ7W.mjs.map} +0 -0
- /package/dist/{chunk-2D4MFVDV.mjs.map → chunk-IMSIVIIC.mjs.map} +0 -0
package/dist/core/index.js
CHANGED
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
|
|
201
201
|
|
|
202
202
|
|
|
203
|
-
var
|
|
203
|
+
var _chunk6J2SQZ3Gjs = require('../chunk-6J2SQZ3G.js');
|
|
204
204
|
require('../chunk-LXKSUWAV.js');
|
|
205
205
|
require('../chunk-IBS6NI7D.js');
|
|
206
206
|
|
|
@@ -429,5 +429,5 @@ require('../chunk-7QVYU63E.js');
|
|
|
429
429
|
|
|
430
430
|
|
|
431
431
|
|
|
432
|
-
exports.AVAILABLE_OAUTH_SCOPES = _chunkUYLS3LJWjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunkUYLS3LJWjs.AbstractApiData; exports.AbstractService = _chunkUYLS3LJWjs.AbstractService; exports.Action = _chunkUYLS3LJWjs.Action; exports.AiConnection = _chunkUYLS3LJWjs.AiConnection; exports.AiConnectionFields = _chunkUYLS3LJWjs.AiConnectionFields; exports.AiConnectionModule = _chunkUYLS3LJWjs.AiConnectionModule; exports.AiConnectionService = _chunkUYLS3LJWjs.AiConnectionService; exports.Assistant = _chunkUYLS3LJWjs.Assistant; exports.AssistantAction = _chunkUYLS3LJWjs.AssistantAction; exports.AssistantActionModule = _chunkUYLS3LJWjs.AssistantActionModule; exports.AssistantActionService = _chunkUYLS3LJWjs.AssistantActionService; exports.AssistantMessage = _chunkUYLS3LJWjs.AssistantMessage; exports.AssistantMessageModule = _chunkUYLS3LJWjs.AssistantMessageModule; exports.AssistantMessageService = _chunkUYLS3LJWjs.AssistantMessageService; exports.AssistantModule = _chunkUYLS3LJWjs.AssistantModule; exports.AssistantService = _chunkUYLS3LJWjs.AssistantService; exports.AuditLog = _chunkUYLS3LJWjs.AuditLog; exports.AuditLogModule = _chunkUYLS3LJWjs.AuditLogModule; exports.AuditLogService = _chunkUYLS3LJWjs.AuditLogService; exports.Auth = _chunkUYLS3LJWjs.Auth; exports.AuthComponent = _chunkUYLS3LJWjs.AuthComponent; exports.AuthModule = _chunkUYLS3LJWjs.AuthModule; exports.AuthService = _chunkUYLS3LJWjs.AuthService; exports.AuthorModule = _chunkUYLS3LJWjs.AuthorModule; exports.BackupCodeVerify = _chunkUYLS3LJWjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunkUYLS3LJWjs.BackupCodeVerifyModule; exports.Billing = _chunkUYLS3LJWjs.Billing; exports.BillingModule = _chunkUYLS3LJWjs.BillingModule; exports.BillingService = _chunkUYLS3LJWjs.BillingService; exports.BlockNoteDiffUtil = _chunkUYLS3LJWjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunkUYLS3LJWjs.BlockNoteWordDiffRendererUtil; exports.CURRENT_USER_STORAGE_KEY = _chunkUYLS3LJWjs.CURRENT_USER_STORAGE_KEY; exports.Chunk = _chunkUYLS3LJWjs.Chunk; exports.ChunkModule = _chunkUYLS3LJWjs.ChunkModule; exports.ClientAbstractService = _chunkUYLS3LJWjs.ClientAbstractService; exports.ClientHttpMethod = _chunkUYLS3LJWjs.ClientHttpMethod; exports.Company = _chunkUYLS3LJWjs.Company; exports.CompanyFields = _chunkUYLS3LJWjs.CompanyFields; exports.CompanyModule = _chunkUYLS3LJWjs.CompanyModule; exports.CompanyService = _chunkUYLS3LJWjs.CompanyService; exports.Content = _chunkUYLS3LJWjs.Content; exports.ContentFields = _chunkUYLS3LJWjs.ContentFields; exports.ContentModule = _chunkUYLS3LJWjs.ContentModule; exports.ContentService = _chunkUYLS3LJWjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunkUYLS3LJWjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkLU7DJ4QFjs.DataClassRegistry; exports.DataClassRegistry = _chunkLU7DJ4QFjs.DataClassRegistry; exports.ENV = _chunkLU7DJ4QFjs.ENV; exports.EndpointCreator = _chunkUYLS3LJWjs.EndpointCreator; exports.EntityAiStatus = _chunkUYLS3LJWjs.EntityAiStatus; exports.Feature = _chunkUYLS3LJWjs.Feature; exports.FeatureModule = _chunkUYLS3LJWjs.FeatureModule; exports.FeatureService = _chunkUYLS3LJWjs.FeatureService; exports.HowTo = _chunkUYLS3LJWjs.HowTo; exports.HowToFields = _chunkUYLS3LJWjs.HowToFields; exports.HowToModule = _chunkUYLS3LJWjs.HowToModule; exports.HowToService = _chunkUYLS3LJWjs.HowToService; exports.HttpMethod = _chunkUYLS3LJWjs.HttpMethod; exports.InvoiceStatus = _chunkUYLS3LJWjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkLU7DJ4QFjs.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunkUYLS3LJWjs.MOBILE_BREAKPOINT; exports.Module = _chunkUYLS3LJWjs.Module; exports.ModuleModule = _chunkUYLS3LJWjs.ModuleModule; exports.ModulePathsModule = _chunkUYLS3LJWjs.ModulePathsModule; exports.ModuleRegistrar = _chunkUYLS3LJWjs.ModuleRegistrar; exports.ModuleRegistry = _chunkUYLS3LJWjs.ModuleRegistry; exports.Modules = _chunkUYLS3LJWjs.Modules; exports.Notification = _chunkUYLS3LJWjs.Notification; exports.NotificationFields = _chunkUYLS3LJWjs.NotificationFields; exports.NotificationModule = _chunkUYLS3LJWjs.NotificationModule; exports.NotificationService = _chunkUYLS3LJWjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunkUYLS3LJWjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunkUYLS3LJWjs.OAuthClient; exports.OAuthModule = _chunkUYLS3LJWjs.OAuthModule; exports.OAuthService = _chunkUYLS3LJWjs.OAuthService; exports.Passkey = _chunkUYLS3LJWjs.Passkey; exports.PasskeyAuthenticationOptions = _chunkUYLS3LJWjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunkUYLS3LJWjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunkUYLS3LJWjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunkUYLS3LJWjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunkUYLS3LJWjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunkUYLS3LJWjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunkUYLS3LJWjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunkUYLS3LJWjs.PasskeyRename; exports.PasskeyRenameModule = _chunkUYLS3LJWjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunkUYLS3LJWjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunkUYLS3LJWjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunkUYLS3LJWjs.PaymentMethod; exports.PermissionMappingModule = _chunkUYLS3LJWjs.PermissionMappingModule; exports.Push = _chunkUYLS3LJWjs.Push; exports.PushModule = _chunkUYLS3LJWjs.PushModule; exports.PushService = _chunkUYLS3LJWjs.PushService; exports.RbacMatrixModule = _chunkUYLS3LJWjs.RbacMatrixModule; exports.ReferralModule = _chunkUYLS3LJWjs.ReferralModule; exports.ReferralService = _chunkUYLS3LJWjs.ReferralService; exports.ReferralStats = _chunkUYLS3LJWjs.ReferralStats; exports.ReferralStatsModule = _chunkUYLS3LJWjs.ReferralStatsModule; exports.RehydrationFactory = _chunkUYLS3LJWjs.RehydrationFactory; exports.Role = _chunkUYLS3LJWjs.Role; exports.RoleFields = _chunkUYLS3LJWjs.RoleFields; exports.RoleModule = _chunkUYLS3LJWjs.RoleModule; exports.RoleService = _chunkUYLS3LJWjs.RoleService; exports.S3 = _chunkUYLS3LJWjs.S3; exports.S3Module = _chunkUYLS3LJWjs.S3Module; exports.S3Service = _chunkUYLS3LJWjs.S3Service; exports.StripeCustomer = _chunkUYLS3LJWjs.StripeCustomer; exports.StripeCustomerModule = _chunkUYLS3LJWjs.StripeCustomerModule; exports.StripeCustomerService = _chunkUYLS3LJWjs.StripeCustomerService; exports.StripeInvoice = _chunkUYLS3LJWjs.StripeInvoice; exports.StripeInvoiceModule = _chunkUYLS3LJWjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunkUYLS3LJWjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunkUYLS3LJWjs.StripePaymentMethodModule; exports.StripePrice = _chunkUYLS3LJWjs.StripePrice; exports.StripePriceFields = _chunkUYLS3LJWjs.StripePriceFields; exports.StripePriceModule = _chunkUYLS3LJWjs.StripePriceModule; exports.StripePriceService = _chunkUYLS3LJWjs.StripePriceService; exports.StripeProduct = _chunkUYLS3LJWjs.StripeProduct; exports.StripeProductFields = _chunkUYLS3LJWjs.StripeProductFields; exports.StripeProductModule = _chunkUYLS3LJWjs.StripeProductModule; exports.StripeProductService = _chunkUYLS3LJWjs.StripeProductService; exports.StripePromotionCode = _chunkUYLS3LJWjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunkUYLS3LJWjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunkUYLS3LJWjs.StripePromotionCodeService; exports.StripeSubscription = _chunkUYLS3LJWjs.StripeSubscription; exports.StripeSubscriptionModule = _chunkUYLS3LJWjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunkUYLS3LJWjs.StripeSubscriptionService; exports.StripeUsage = _chunkUYLS3LJWjs.StripeUsage; exports.StripeUsageModule = _chunkUYLS3LJWjs.StripeUsageModule; exports.StripeUsageService = _chunkUYLS3LJWjs.StripeUsageService; exports.SubscriptionStatus = _chunkUYLS3LJWjs.SubscriptionStatus; exports.TableOptions = _chunkUYLS3LJWjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunkUYLS3LJWjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunkUYLS3LJWjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunkUYLS3LJWjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunkUYLS3LJWjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunkUYLS3LJWjs.TotpAuthenticatorModule; exports.TotpSetup = _chunkUYLS3LJWjs.TotpSetup; exports.TotpSetupModule = _chunkUYLS3LJWjs.TotpSetupModule; exports.TotpVerify = _chunkUYLS3LJWjs.TotpVerify; exports.TotpVerifyLogin = _chunkUYLS3LJWjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunkUYLS3LJWjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunkUYLS3LJWjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunkUYLS3LJWjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunkUYLS3LJWjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunkUYLS3LJWjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunkUYLS3LJWjs.TwoFactorEnableModule; exports.TwoFactorService = _chunkUYLS3LJWjs.TwoFactorService; exports.TwoFactorStatus = _chunkUYLS3LJWjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunkUYLS3LJWjs.TwoFactorStatusModule; exports.User = _chunkUYLS3LJWjs.User; exports.UserFields = _chunkUYLS3LJWjs.UserFields; exports.UserModule = _chunkUYLS3LJWjs.UserModule; exports.UserService = _chunkUYLS3LJWjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunkUYLS3LJWjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunkUYLS3LJWjs.Waitlist; exports.WaitlistModule = _chunkUYLS3LJWjs.WaitlistModule; exports.WaitlistService = _chunkUYLS3LJWjs.WaitlistService; exports.WaitlistStats = _chunkUYLS3LJWjs.WaitlistStats; exports.WaitlistStatsModule = _chunkUYLS3LJWjs.WaitlistStatsModule; exports.checkPermissions = _chunkUYLS3LJWjs.checkPermissions; exports.checkPermissionsFromServer = _chunkUYLS3LJWjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunkUYLS3LJWjs.clearLastApiMeta; exports.clearLastApiTotal = _chunkUYLS3LJWjs.clearLastApiTotal; exports.cn = _chunkUYLS3LJWjs.cn; exports.composeRefs = _chunkUYLS3LJWjs.composeRefs; exports.configureTokenUsage = _chunkUYLS3LJWjs.configureTokenUsage; exports.createJsonApiInclusion = _chunkUYLS3LJWjs.createJsonApiInclusion; exports.dismissToast = _chunkUYLS3LJWjs.dismissToast; exports.entityObjectSchema = _chunkUYLS3LJWjs.entityObjectSchema; exports.exists = _chunkUYLS3LJWjs.exists; exports.formatCodiceFiscale = _chunkUYLS3LJWjs.formatCodiceFiscale; exports.formatDate = _chunkUYLS3LJWjs.formatDate; exports.formatLocalDate = _chunkUYLS3LJWjs.formatLocalDate; exports.formatPartitaIva = _chunkUYLS3LJWjs.formatPartitaIva; exports.getBootstrapper = _chunkLU7DJ4QFjs.getBootstrapper; exports.getClientGlobalErrorHandler = _chunkUYLS3LJWjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunkUYLS3LJWjs.getGlobalErrorHandler; exports.getIcon = _chunkUYLS3LJWjs.getIcon; exports.getIconByModule = _chunkUYLS3LJWjs.getIconByModule; exports.getIconByModuleName = _chunkUYLS3LJWjs.getIconByModuleName; exports.getInitials = _chunkUYLS3LJWjs.getInitials; exports.getLastApiMeta = _chunkUYLS3LJWjs.getLastApiMeta; exports.getLastApiTotal = _chunkUYLS3LJWjs.getLastApiTotal; exports.getLucideIcon = _chunkUYLS3LJWjs.getLucideIcon; exports.getLucideIconByModule = _chunkUYLS3LJWjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunkUYLS3LJWjs.getLucideIconByModuleName; exports.getTableComponents = _chunkUYLS3LJWjs.getTableComponents; exports.getTableOptions = _chunkUYLS3LJWjs.getTableOptions; exports.getTokenUsageCurrency = _chunkUYLS3LJWjs.getTokenUsageCurrency; exports.getValueFromPath = _chunkUYLS3LJWjs.getValueFromPath; exports.hasBootstrapper = _chunkLU7DJ4QFjs.hasBootstrapper; exports.isRemoteImageSrc = _chunkUYLS3LJWjs.isRemoteImageSrc; exports.rehydrate = _chunkUYLS3LJWjs.rehydrate; exports.rehydrateList = _chunkUYLS3LJWjs.rehydrateList; exports.resetBootstrapStore = _chunkLU7DJ4QFjs.resetBootstrapStore; exports.setBootstrapper = _chunkLU7DJ4QFjs.setBootstrapper; exports.setClientGlobalErrorHandler = _chunkUYLS3LJWjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunkUYLS3LJWjs.setGlobalErrorHandler; exports.showCustomToast = _chunkUYLS3LJWjs.showCustomToast; exports.showError = _chunkUYLS3LJWjs.showError; exports.showToast = _chunkUYLS3LJWjs.showToast; exports.tokenUsageModules = _chunkUYLS3LJWjs.tokenUsageModules; exports.translateData = _chunkLU7DJ4QFjs.translateData; exports.translateResponse = _chunkLU7DJ4QFjs.translateResponse; exports.tryBootstrap = _chunkLU7DJ4QFjs.tryBootstrap; exports.useComposedRefs = _chunkUYLS3LJWjs.useComposedRefs; exports.useIsMobile = _chunkUYLS3LJWjs.useIsMobile; exports.userObjectSchema = _chunkUYLS3LJWjs.userObjectSchema; exports.validateCodiceFiscale = _chunkUYLS3LJWjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunkUYLS3LJWjs.validateItalianTaxCode; exports.validatePartitaIva = _chunkUYLS3LJWjs.validatePartitaIva;
|
|
432
|
+
exports.AVAILABLE_OAUTH_SCOPES = _chunk6J2SQZ3Gjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunk6J2SQZ3Gjs.AbstractApiData; exports.AbstractService = _chunk6J2SQZ3Gjs.AbstractService; exports.Action = _chunk6J2SQZ3Gjs.Action; exports.AiConnection = _chunk6J2SQZ3Gjs.AiConnection; exports.AiConnectionFields = _chunk6J2SQZ3Gjs.AiConnectionFields; exports.AiConnectionModule = _chunk6J2SQZ3Gjs.AiConnectionModule; exports.AiConnectionService = _chunk6J2SQZ3Gjs.AiConnectionService; exports.Assistant = _chunk6J2SQZ3Gjs.Assistant; exports.AssistantAction = _chunk6J2SQZ3Gjs.AssistantAction; exports.AssistantActionModule = _chunk6J2SQZ3Gjs.AssistantActionModule; exports.AssistantActionService = _chunk6J2SQZ3Gjs.AssistantActionService; exports.AssistantMessage = _chunk6J2SQZ3Gjs.AssistantMessage; exports.AssistantMessageModule = _chunk6J2SQZ3Gjs.AssistantMessageModule; exports.AssistantMessageService = _chunk6J2SQZ3Gjs.AssistantMessageService; exports.AssistantModule = _chunk6J2SQZ3Gjs.AssistantModule; exports.AssistantService = _chunk6J2SQZ3Gjs.AssistantService; exports.AuditLog = _chunk6J2SQZ3Gjs.AuditLog; exports.AuditLogModule = _chunk6J2SQZ3Gjs.AuditLogModule; exports.AuditLogService = _chunk6J2SQZ3Gjs.AuditLogService; exports.Auth = _chunk6J2SQZ3Gjs.Auth; exports.AuthComponent = _chunk6J2SQZ3Gjs.AuthComponent; exports.AuthModule = _chunk6J2SQZ3Gjs.AuthModule; exports.AuthService = _chunk6J2SQZ3Gjs.AuthService; exports.AuthorModule = _chunk6J2SQZ3Gjs.AuthorModule; exports.BackupCodeVerify = _chunk6J2SQZ3Gjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunk6J2SQZ3Gjs.BackupCodeVerifyModule; exports.Billing = _chunk6J2SQZ3Gjs.Billing; exports.BillingModule = _chunk6J2SQZ3Gjs.BillingModule; exports.BillingService = _chunk6J2SQZ3Gjs.BillingService; exports.BlockNoteDiffUtil = _chunk6J2SQZ3Gjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunk6J2SQZ3Gjs.BlockNoteWordDiffRendererUtil; exports.CURRENT_USER_STORAGE_KEY = _chunk6J2SQZ3Gjs.CURRENT_USER_STORAGE_KEY; exports.Chunk = _chunk6J2SQZ3Gjs.Chunk; exports.ChunkModule = _chunk6J2SQZ3Gjs.ChunkModule; exports.ClientAbstractService = _chunk6J2SQZ3Gjs.ClientAbstractService; exports.ClientHttpMethod = _chunk6J2SQZ3Gjs.ClientHttpMethod; exports.Company = _chunk6J2SQZ3Gjs.Company; exports.CompanyFields = _chunk6J2SQZ3Gjs.CompanyFields; exports.CompanyModule = _chunk6J2SQZ3Gjs.CompanyModule; exports.CompanyService = _chunk6J2SQZ3Gjs.CompanyService; exports.Content = _chunk6J2SQZ3Gjs.Content; exports.ContentFields = _chunk6J2SQZ3Gjs.ContentFields; exports.ContentModule = _chunk6J2SQZ3Gjs.ContentModule; exports.ContentService = _chunk6J2SQZ3Gjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunk6J2SQZ3Gjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkLU7DJ4QFjs.DataClassRegistry; exports.DataClassRegistry = _chunkLU7DJ4QFjs.DataClassRegistry; exports.ENV = _chunkLU7DJ4QFjs.ENV; exports.EndpointCreator = _chunk6J2SQZ3Gjs.EndpointCreator; exports.EntityAiStatus = _chunk6J2SQZ3Gjs.EntityAiStatus; exports.Feature = _chunk6J2SQZ3Gjs.Feature; exports.FeatureModule = _chunk6J2SQZ3Gjs.FeatureModule; exports.FeatureService = _chunk6J2SQZ3Gjs.FeatureService; exports.HowTo = _chunk6J2SQZ3Gjs.HowTo; exports.HowToFields = _chunk6J2SQZ3Gjs.HowToFields; exports.HowToModule = _chunk6J2SQZ3Gjs.HowToModule; exports.HowToService = _chunk6J2SQZ3Gjs.HowToService; exports.HttpMethod = _chunk6J2SQZ3Gjs.HttpMethod; exports.InvoiceStatus = _chunk6J2SQZ3Gjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkLU7DJ4QFjs.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunk6J2SQZ3Gjs.MOBILE_BREAKPOINT; exports.Module = _chunk6J2SQZ3Gjs.Module; exports.ModuleModule = _chunk6J2SQZ3Gjs.ModuleModule; exports.ModulePathsModule = _chunk6J2SQZ3Gjs.ModulePathsModule; exports.ModuleRegistrar = _chunk6J2SQZ3Gjs.ModuleRegistrar; exports.ModuleRegistry = _chunk6J2SQZ3Gjs.ModuleRegistry; exports.Modules = _chunk6J2SQZ3Gjs.Modules; exports.Notification = _chunk6J2SQZ3Gjs.Notification; exports.NotificationFields = _chunk6J2SQZ3Gjs.NotificationFields; exports.NotificationModule = _chunk6J2SQZ3Gjs.NotificationModule; exports.NotificationService = _chunk6J2SQZ3Gjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunk6J2SQZ3Gjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunk6J2SQZ3Gjs.OAuthClient; exports.OAuthModule = _chunk6J2SQZ3Gjs.OAuthModule; exports.OAuthService = _chunk6J2SQZ3Gjs.OAuthService; exports.Passkey = _chunk6J2SQZ3Gjs.Passkey; exports.PasskeyAuthenticationOptions = _chunk6J2SQZ3Gjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunk6J2SQZ3Gjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunk6J2SQZ3Gjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunk6J2SQZ3Gjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunk6J2SQZ3Gjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunk6J2SQZ3Gjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunk6J2SQZ3Gjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunk6J2SQZ3Gjs.PasskeyRename; exports.PasskeyRenameModule = _chunk6J2SQZ3Gjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunk6J2SQZ3Gjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunk6J2SQZ3Gjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunk6J2SQZ3Gjs.PaymentMethod; exports.PermissionMappingModule = _chunk6J2SQZ3Gjs.PermissionMappingModule; exports.Push = _chunk6J2SQZ3Gjs.Push; exports.PushModule = _chunk6J2SQZ3Gjs.PushModule; exports.PushService = _chunk6J2SQZ3Gjs.PushService; exports.RbacMatrixModule = _chunk6J2SQZ3Gjs.RbacMatrixModule; exports.ReferralModule = _chunk6J2SQZ3Gjs.ReferralModule; exports.ReferralService = _chunk6J2SQZ3Gjs.ReferralService; exports.ReferralStats = _chunk6J2SQZ3Gjs.ReferralStats; exports.ReferralStatsModule = _chunk6J2SQZ3Gjs.ReferralStatsModule; exports.RehydrationFactory = _chunk6J2SQZ3Gjs.RehydrationFactory; exports.Role = _chunk6J2SQZ3Gjs.Role; exports.RoleFields = _chunk6J2SQZ3Gjs.RoleFields; exports.RoleModule = _chunk6J2SQZ3Gjs.RoleModule; exports.RoleService = _chunk6J2SQZ3Gjs.RoleService; exports.S3 = _chunk6J2SQZ3Gjs.S3; exports.S3Module = _chunk6J2SQZ3Gjs.S3Module; exports.S3Service = _chunk6J2SQZ3Gjs.S3Service; exports.StripeCustomer = _chunk6J2SQZ3Gjs.StripeCustomer; exports.StripeCustomerModule = _chunk6J2SQZ3Gjs.StripeCustomerModule; exports.StripeCustomerService = _chunk6J2SQZ3Gjs.StripeCustomerService; exports.StripeInvoice = _chunk6J2SQZ3Gjs.StripeInvoice; exports.StripeInvoiceModule = _chunk6J2SQZ3Gjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunk6J2SQZ3Gjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunk6J2SQZ3Gjs.StripePaymentMethodModule; exports.StripePrice = _chunk6J2SQZ3Gjs.StripePrice; exports.StripePriceFields = _chunk6J2SQZ3Gjs.StripePriceFields; exports.StripePriceModule = _chunk6J2SQZ3Gjs.StripePriceModule; exports.StripePriceService = _chunk6J2SQZ3Gjs.StripePriceService; exports.StripeProduct = _chunk6J2SQZ3Gjs.StripeProduct; exports.StripeProductFields = _chunk6J2SQZ3Gjs.StripeProductFields; exports.StripeProductModule = _chunk6J2SQZ3Gjs.StripeProductModule; exports.StripeProductService = _chunk6J2SQZ3Gjs.StripeProductService; exports.StripePromotionCode = _chunk6J2SQZ3Gjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunk6J2SQZ3Gjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunk6J2SQZ3Gjs.StripePromotionCodeService; exports.StripeSubscription = _chunk6J2SQZ3Gjs.StripeSubscription; exports.StripeSubscriptionModule = _chunk6J2SQZ3Gjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunk6J2SQZ3Gjs.StripeSubscriptionService; exports.StripeUsage = _chunk6J2SQZ3Gjs.StripeUsage; exports.StripeUsageModule = _chunk6J2SQZ3Gjs.StripeUsageModule; exports.StripeUsageService = _chunk6J2SQZ3Gjs.StripeUsageService; exports.SubscriptionStatus = _chunk6J2SQZ3Gjs.SubscriptionStatus; exports.TableOptions = _chunk6J2SQZ3Gjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunk6J2SQZ3Gjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunk6J2SQZ3Gjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunk6J2SQZ3Gjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunk6J2SQZ3Gjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunk6J2SQZ3Gjs.TotpAuthenticatorModule; exports.TotpSetup = _chunk6J2SQZ3Gjs.TotpSetup; exports.TotpSetupModule = _chunk6J2SQZ3Gjs.TotpSetupModule; exports.TotpVerify = _chunk6J2SQZ3Gjs.TotpVerify; exports.TotpVerifyLogin = _chunk6J2SQZ3Gjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunk6J2SQZ3Gjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunk6J2SQZ3Gjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunk6J2SQZ3Gjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunk6J2SQZ3Gjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunk6J2SQZ3Gjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunk6J2SQZ3Gjs.TwoFactorEnableModule; exports.TwoFactorService = _chunk6J2SQZ3Gjs.TwoFactorService; exports.TwoFactorStatus = _chunk6J2SQZ3Gjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunk6J2SQZ3Gjs.TwoFactorStatusModule; exports.User = _chunk6J2SQZ3Gjs.User; exports.UserFields = _chunk6J2SQZ3Gjs.UserFields; exports.UserModule = _chunk6J2SQZ3Gjs.UserModule; exports.UserService = _chunk6J2SQZ3Gjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunk6J2SQZ3Gjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunk6J2SQZ3Gjs.Waitlist; exports.WaitlistModule = _chunk6J2SQZ3Gjs.WaitlistModule; exports.WaitlistService = _chunk6J2SQZ3Gjs.WaitlistService; exports.WaitlistStats = _chunk6J2SQZ3Gjs.WaitlistStats; exports.WaitlistStatsModule = _chunk6J2SQZ3Gjs.WaitlistStatsModule; exports.checkPermissions = _chunk6J2SQZ3Gjs.checkPermissions; exports.checkPermissionsFromServer = _chunk6J2SQZ3Gjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunk6J2SQZ3Gjs.clearLastApiMeta; exports.clearLastApiTotal = _chunk6J2SQZ3Gjs.clearLastApiTotal; exports.cn = _chunk6J2SQZ3Gjs.cn; exports.composeRefs = _chunk6J2SQZ3Gjs.composeRefs; exports.configureTokenUsage = _chunk6J2SQZ3Gjs.configureTokenUsage; exports.createJsonApiInclusion = _chunk6J2SQZ3Gjs.createJsonApiInclusion; exports.dismissToast = _chunk6J2SQZ3Gjs.dismissToast; exports.entityObjectSchema = _chunk6J2SQZ3Gjs.entityObjectSchema; exports.exists = _chunk6J2SQZ3Gjs.exists; exports.formatCodiceFiscale = _chunk6J2SQZ3Gjs.formatCodiceFiscale; exports.formatDate = _chunk6J2SQZ3Gjs.formatDate; exports.formatLocalDate = _chunk6J2SQZ3Gjs.formatLocalDate; exports.formatPartitaIva = _chunk6J2SQZ3Gjs.formatPartitaIva; exports.getBootstrapper = _chunkLU7DJ4QFjs.getBootstrapper; exports.getClientGlobalErrorHandler = _chunk6J2SQZ3Gjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunk6J2SQZ3Gjs.getGlobalErrorHandler; exports.getIcon = _chunk6J2SQZ3Gjs.getIcon; exports.getIconByModule = _chunk6J2SQZ3Gjs.getIconByModule; exports.getIconByModuleName = _chunk6J2SQZ3Gjs.getIconByModuleName; exports.getInitials = _chunk6J2SQZ3Gjs.getInitials; exports.getLastApiMeta = _chunk6J2SQZ3Gjs.getLastApiMeta; exports.getLastApiTotal = _chunk6J2SQZ3Gjs.getLastApiTotal; exports.getLucideIcon = _chunk6J2SQZ3Gjs.getLucideIcon; exports.getLucideIconByModule = _chunk6J2SQZ3Gjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunk6J2SQZ3Gjs.getLucideIconByModuleName; exports.getTableComponents = _chunk6J2SQZ3Gjs.getTableComponents; exports.getTableOptions = _chunk6J2SQZ3Gjs.getTableOptions; exports.getTokenUsageCurrency = _chunk6J2SQZ3Gjs.getTokenUsageCurrency; exports.getValueFromPath = _chunk6J2SQZ3Gjs.getValueFromPath; exports.hasBootstrapper = _chunkLU7DJ4QFjs.hasBootstrapper; exports.isRemoteImageSrc = _chunk6J2SQZ3Gjs.isRemoteImageSrc; exports.rehydrate = _chunk6J2SQZ3Gjs.rehydrate; exports.rehydrateList = _chunk6J2SQZ3Gjs.rehydrateList; exports.resetBootstrapStore = _chunkLU7DJ4QFjs.resetBootstrapStore; exports.setBootstrapper = _chunkLU7DJ4QFjs.setBootstrapper; exports.setClientGlobalErrorHandler = _chunk6J2SQZ3Gjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunk6J2SQZ3Gjs.setGlobalErrorHandler; exports.showCustomToast = _chunk6J2SQZ3Gjs.showCustomToast; exports.showError = _chunk6J2SQZ3Gjs.showError; exports.showToast = _chunk6J2SQZ3Gjs.showToast; exports.tokenUsageModules = _chunk6J2SQZ3Gjs.tokenUsageModules; exports.translateData = _chunkLU7DJ4QFjs.translateData; exports.translateResponse = _chunkLU7DJ4QFjs.translateResponse; exports.tryBootstrap = _chunkLU7DJ4QFjs.tryBootstrap; exports.useComposedRefs = _chunk6J2SQZ3Gjs.useComposedRefs; exports.useIsMobile = _chunk6J2SQZ3Gjs.useIsMobile; exports.userObjectSchema = _chunk6J2SQZ3Gjs.userObjectSchema; exports.validateCodiceFiscale = _chunk6J2SQZ3Gjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunk6J2SQZ3Gjs.validateItalianTaxCode; exports.validatePartitaIva = _chunk6J2SQZ3Gjs.validatePartitaIva;
|
|
433
433
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.mjs
CHANGED
|
@@ -1,29 +1,30 @@
|
|
|
1
1
|
/* src/features/onboarding/styles/onboarding.css */
|
|
2
|
-
.
|
|
3
|
-
|
|
2
|
+
.driver-popover.onboarding-popover {
|
|
3
|
+
background: transparent;
|
|
4
|
+
box-shadow: none;
|
|
5
|
+
padding: 0;
|
|
6
|
+
border-radius: 0;
|
|
7
|
+
max-width: none;
|
|
8
|
+
width: auto;
|
|
9
|
+
overflow: visible;
|
|
10
|
+
color: inherit;
|
|
4
11
|
}
|
|
5
|
-
.
|
|
6
|
-
|
|
12
|
+
.driver-popover.onboarding-popover .driver-popover-title,
|
|
13
|
+
.driver-popover.onboarding-popover .driver-popover-description,
|
|
14
|
+
.driver-popover.onboarding-popover .driver-popover-footer,
|
|
15
|
+
.driver-popover.onboarding-popover .driver-popover-close-btn {
|
|
16
|
+
display: none;
|
|
7
17
|
}
|
|
8
|
-
.
|
|
9
|
-
|
|
10
|
-
border: none !important;
|
|
11
|
-
box-shadow: none !important;
|
|
12
|
-
padding: 0 !important;
|
|
13
|
-
max-width: none !important;
|
|
18
|
+
.driver-popover.onboarding-popover .driver-popover-arrow-side-top {
|
|
19
|
+
border-top-color: var(--card);
|
|
14
20
|
}
|
|
15
|
-
.
|
|
16
|
-
|
|
17
|
-
padding: 0 !important;
|
|
21
|
+
.driver-popover.onboarding-popover .driver-popover-arrow-side-bottom {
|
|
22
|
+
border-bottom-color: var(--card);
|
|
18
23
|
}
|
|
19
|
-
.
|
|
20
|
-
|
|
24
|
+
.driver-popover.onboarding-popover .driver-popover-arrow-side-left {
|
|
25
|
+
border-left-color: var(--card);
|
|
21
26
|
}
|
|
22
|
-
.
|
|
23
|
-
|
|
24
|
-
display: none !important;
|
|
25
|
-
}
|
|
26
|
-
.dark .shepherd-arrow::before {
|
|
27
|
-
background: hsl(var(--card)) !important;
|
|
27
|
+
.driver-popover.onboarding-popover .driver-popover-arrow-side-right {
|
|
28
|
+
border-right-color: var(--card);
|
|
28
29
|
}
|
|
29
30
|
/*# sourceMappingURL=index.css.map */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/features/onboarding/styles/onboarding.css"],"sourcesContent":["/*
|
|
1
|
+
{"version":3,"sources":["../../../src/features/onboarding/styles/onboarding.css"],"sourcesContent":["/* driver.js chrome is hidden: the React card mounted by OnboardingContext is the whole popover. */\n.driver-popover.onboarding-popover {\n background: transparent;\n box-shadow: none;\n padding: 0;\n border-radius: 0;\n max-width: none;\n width: auto;\n /* The card is the popover; driver.js's own clipping would cut it off. */\n overflow: visible;\n color: inherit;\n}\n\n.driver-popover.onboarding-popover .driver-popover-title,\n.driver-popover.onboarding-popover .driver-popover-description,\n.driver-popover.onboarding-popover .driver-popover-footer,\n.driver-popover.onboarding-popover .driver-popover-close-btn {\n display: none;\n}\n\n/* Arrow colour follows the card surface so it reads as part of it. */\n.driver-popover.onboarding-popover .driver-popover-arrow-side-top {\n border-top-color: var(--card);\n}\n.driver-popover.onboarding-popover .driver-popover-arrow-side-bottom {\n border-bottom-color: var(--card);\n}\n.driver-popover.onboarding-popover .driver-popover-arrow-side-left {\n border-left-color: var(--card);\n}\n.driver-popover.onboarding-popover .driver-popover-arrow-side-right {\n border-right-color: var(--card);\n}\n"],"mappings":";AACA,CAAC,cAAc,CAAC;AACd,cAAY;AACZ,cAAY;AACZ,WAAS;AACT,iBAAe;AACf,aAAW;AACX,SAAO;AAEP,YAAU;AACV,SAAO;AACT;AAEA,CAZC,cAYc,CAZC,mBAYmB,CAAC;AACpC,CAbC,cAac,CAbC,mBAamB,CAAC;AACpC,CAdC,cAcc,CAdC,mBAcmB,CAAC;AACpC,CAfC,cAec,CAfC,mBAemB,CAAC;AAClC,WAAS;AACX;AAGA,CApBC,cAoBc,CApBC,mBAoBmB,CAAC;AAClC,oBAAkB,IAAI;AACxB;AACA,CAvBC,cAuBc,CAvBC,mBAuBmB,CAAC;AAClC,uBAAqB,IAAI;AAC3B;AACA,CA1BC,cA0Bc,CA1BC,mBA0BmB,CAAC;AAClC,qBAAmB,IAAI;AACzB;AACA,CA7BC,cA6Bc,CA7BC,mBA6BmB,CAAC;AAClC,sBAAoB,IAAI;AAC1B;","names":[]}
|
|
@@ -43,6 +43,11 @@ declare function HelpHint({ contextKey }: {
|
|
|
43
43
|
|
|
44
44
|
declare function HelpAskAi(): React.JSX.Element;
|
|
45
45
|
|
|
46
|
+
declare function HelpAssistantSheet({ open, onOpenChange }: {
|
|
47
|
+
open: boolean;
|
|
48
|
+
onOpenChange: (o: boolean) => void;
|
|
49
|
+
}): React.JSX.Element;
|
|
50
|
+
|
|
46
51
|
interface HelpSearchResultRowProps {
|
|
47
52
|
result: {
|
|
48
53
|
id: string;
|
|
@@ -71,4 +76,4 @@ declare function modeUrl(generateUrl: ReturnType<typeof usePageUrlGenerator>, mo
|
|
|
71
76
|
*/
|
|
72
77
|
declare const HELP_I18N_KEYS: readonly ["help.modes.tutorial", "help.modes.how-to", "help.modes.reference", "help.modes.explanation", "help.sideNav.filterPlaceholder", "help.sideNav.noMatches", "help.toc.title", "help.article.lastUpdated", "help.article.previous", "help.article.next", "help.article.related", "help.askAi.button", "help.askAi.loginTooltip", "help.askAi.sheet.title", "help.askAi.sheet.subtitle", "help.header.search", "help.header.login", "help.header.openApp", "help.hint.trigger", "help.hint.viewArticle", "help.hint.pickArticle", "help.landing.heading", "help.landing.subheading", "help.landing.featuredTutorials", "help.landing.browseByMode", "help.modeIndex.empty", "help.search.removed", "help.footerLink"];
|
|
73
78
|
|
|
74
|
-
export { HELP_I18N_KEYS, HelpArticle, HelpArticleBody, HelpAskAi, HelpContentConfig, HelpHeader, HelpHeading, HelpHint, HelpMode, HelpProvider, HelpSearchResultRow, HelpSideNav, HelpTOC, articleUrl, modeUrl, useHelp, useHelpFilter };
|
|
79
|
+
export { HELP_I18N_KEYS, HelpArticle, HelpArticleBody, HelpAskAi, HelpAssistantSheet, HelpContentConfig, HelpHeader, HelpHeading, HelpHint, HelpMode, HelpProvider, HelpSearchResultRow, HelpSideNav, HelpTOC, articleUrl, modeUrl, useHelp, useHelpFilter };
|
|
@@ -43,6 +43,11 @@ declare function HelpHint({ contextKey }: {
|
|
|
43
43
|
|
|
44
44
|
declare function HelpAskAi(): React.JSX.Element;
|
|
45
45
|
|
|
46
|
+
declare function HelpAssistantSheet({ open, onOpenChange }: {
|
|
47
|
+
open: boolean;
|
|
48
|
+
onOpenChange: (o: boolean) => void;
|
|
49
|
+
}): React.JSX.Element;
|
|
50
|
+
|
|
46
51
|
interface HelpSearchResultRowProps {
|
|
47
52
|
result: {
|
|
48
53
|
id: string;
|
|
@@ -71,4 +76,4 @@ declare function modeUrl(generateUrl: ReturnType<typeof usePageUrlGenerator>, mo
|
|
|
71
76
|
*/
|
|
72
77
|
declare const HELP_I18N_KEYS: readonly ["help.modes.tutorial", "help.modes.how-to", "help.modes.reference", "help.modes.explanation", "help.sideNav.filterPlaceholder", "help.sideNav.noMatches", "help.toc.title", "help.article.lastUpdated", "help.article.previous", "help.article.next", "help.article.related", "help.askAi.button", "help.askAi.loginTooltip", "help.askAi.sheet.title", "help.askAi.sheet.subtitle", "help.header.search", "help.header.login", "help.header.openApp", "help.hint.trigger", "help.hint.viewArticle", "help.hint.pickArticle", "help.landing.heading", "help.landing.subheading", "help.landing.featuredTutorials", "help.landing.browseByMode", "help.modeIndex.empty", "help.search.removed", "help.footerLink"];
|
|
73
78
|
|
|
74
|
-
export { HELP_I18N_KEYS, HelpArticle, HelpArticleBody, HelpAskAi, HelpContentConfig, HelpHeader, HelpHeading, HelpHint, HelpMode, HelpProvider, HelpSearchResultRow, HelpSideNav, HelpTOC, articleUrl, modeUrl, useHelp, useHelpFilter };
|
|
79
|
+
export { HELP_I18N_KEYS, HelpArticle, HelpArticleBody, HelpAskAi, HelpAssistantSheet, HelpContentConfig, HelpHeader, HelpHeading, HelpHint, HelpMode, HelpProvider, HelpSearchResultRow, HelpSideNav, HelpTOC, articleUrl, modeUrl, useHelp, useHelpFilter };
|
|
@@ -23,13 +23,13 @@ var _chunkYBZVWLPHjs = require('../../chunk-YBZVWLPH.js');
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _chunkYN4LOVL4js = require('../../chunk-YN4LOVL4.js');
|
|
27
27
|
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var _chunkV6CGCARDjs = require('../../chunk-V6CGCARD.js');
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
var
|
|
32
|
+
var _chunk6J2SQZ3Gjs = require('../../chunk-6J2SQZ3G.js');
|
|
33
33
|
require('../../chunk-LXKSUWAV.js');
|
|
34
34
|
require('../../chunk-IBS6NI7D.js');
|
|
35
35
|
require('../../chunk-LU7DJ4QF.js');
|
|
@@ -43,7 +43,7 @@ var _react = require('react');
|
|
|
43
43
|
var _jsxruntime = require('react/jsx-runtime');
|
|
44
44
|
var HelpContext = _react.createContext.call(void 0, null);
|
|
45
45
|
function HelpProvider({ children }) {
|
|
46
|
-
const cfg =
|
|
46
|
+
const cfg = _chunkV6CGCARDjs._getStaticHelpContent.call(void 0, );
|
|
47
47
|
if (!cfg) {
|
|
48
48
|
throw new Error(
|
|
49
49
|
"Help content not configured \u2014 call configureJsonApi({ helpContent: {...} }) before importing help components."
|
|
@@ -75,29 +75,29 @@ var _lucidereact = require('lucide-react');
|
|
|
75
75
|
|
|
76
76
|
|
|
77
77
|
function HelpAssistantSheet({ open, onOpenChange }) {
|
|
78
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
79
|
-
|
|
78
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.Sheet, { open, onOpenChange, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
79
|
+
_chunkYN4LOVL4js.SheetContent,
|
|
80
80
|
{
|
|
81
81
|
side: "end",
|
|
82
82
|
className: "flex w-full flex-col data-[side=right]:sm:max-w-2xl data-[side=right]:lg:max-w-3xl data-[side=left]:sm:max-w-2xl data-[side=left]:lg:max-w-3xl",
|
|
83
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
83
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.AssistantProvider, { manageUrl: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HelpAssistantSheetBody, {}) })
|
|
84
84
|
}
|
|
85
85
|
) });
|
|
86
86
|
}
|
|
87
87
|
_chunk7QVYU63Ejs.__name.call(void 0, HelpAssistantSheet, "HelpAssistantSheet");
|
|
88
88
|
function HelpAssistantSheetBody() {
|
|
89
89
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
90
|
-
const ctx =
|
|
90
|
+
const ctx = _chunkYN4LOVL4js.useAssistantContext.call(void 0, );
|
|
91
91
|
const showThread = !!ctx.assistant || ctx.sending || ctx.messages.length > 0;
|
|
92
92
|
const send = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (content) => ctx.sendMessage(content, { howToMode: true }), "send");
|
|
93
93
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
94
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
95
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
96
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
94
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.SheetHeader, { children: [
|
|
95
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.SheetTitle, { children: t("help.askAi.sheet.title") }),
|
|
96
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.SheetDescription, { children: t("help.askAi.sheet.subtitle") })
|
|
97
97
|
] }),
|
|
98
|
-
!showThread ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
98
|
+
!showThread ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.AssistantEmptyState, { onSend: send }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
99
99
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
100
|
-
|
|
100
|
+
_chunkYN4LOVL4js.AssistantThread,
|
|
101
101
|
{
|
|
102
102
|
messages: ctx.messages,
|
|
103
103
|
sending: ctx.sending,
|
|
@@ -107,7 +107,7 @@ function HelpAssistantSheetBody() {
|
|
|
107
107
|
onRetry: ctx.retrySend
|
|
108
108
|
}
|
|
109
109
|
),
|
|
110
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
110
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.AssistantComposer, { onSend: send, disabled: ctx.sending })
|
|
111
111
|
] })
|
|
112
112
|
] });
|
|
113
113
|
}
|
|
@@ -117,20 +117,20 @@ _chunk7QVYU63Ejs.__name.call(void 0, HelpAssistantSheetBody, "HelpAssistantSheet
|
|
|
117
117
|
|
|
118
118
|
function HelpAskAi() {
|
|
119
119
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
120
|
-
const { currentUser } =
|
|
120
|
+
const { currentUser } = _chunkYN4LOVL4js.useCurrentUserContext.call(void 0, );
|
|
121
121
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
122
122
|
const disabled = !currentUser;
|
|
123
123
|
if (disabled) {
|
|
124
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
125
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
124
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.Tooltip, { children: [
|
|
125
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.TooltipTrigger, { render: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.Button, { variant: "outline", size: "sm", disabled: true }), children: [
|
|
126
126
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.SparklesIcon, { className: "h-4 w-4" }),
|
|
127
127
|
t("help.askAi.button")
|
|
128
128
|
] }),
|
|
129
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
129
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.TooltipContent, { children: t("help.askAi.loginTooltip") })
|
|
130
130
|
] });
|
|
131
131
|
}
|
|
132
132
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
133
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
133
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.Button, { variant: "outline", size: "sm", onClick: () => setOpen(true), children: [
|
|
134
134
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.SparklesIcon, { className: "h-4 w-4" }),
|
|
135
135
|
t("help.askAi.button")
|
|
136
136
|
] }),
|
|
@@ -143,7 +143,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, HelpAskAi, "HelpAskAi");
|
|
|
143
143
|
|
|
144
144
|
function HelpHeader() {
|
|
145
145
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
146
|
-
const { currentUser } =
|
|
146
|
+
const { currentUser } = _chunkYN4LOVL4js.useCurrentUserContext.call(void 0, );
|
|
147
147
|
const { brand } = useHelp();
|
|
148
148
|
const logo = _optionalChain([brand, 'optionalAccess', _ => _.logo]);
|
|
149
149
|
const label = _nullishCoalesce(_optionalChain([brand, 'optionalAccess', _2 => _2.label]), () => ( "Help"));
|
|
@@ -159,7 +159,7 @@ function HelpHeader() {
|
|
|
159
159
|
] }),
|
|
160
160
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
161
161
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HelpAskAi, {}),
|
|
162
|
-
currentUser ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: appHref, className:
|
|
162
|
+
currentUser ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: appHref, className: _chunkYN4LOVL4js.buttonVariants.call(void 0, { variant: "outline", size: "sm" }), children: t("help.header.openApp") }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: "/login", className: _chunkYN4LOVL4js.buttonVariants.call(void 0, { variant: "outline", size: "sm" }), children: t("help.header.login") })
|
|
163
163
|
] })
|
|
164
164
|
] });
|
|
165
165
|
}
|
|
@@ -201,12 +201,12 @@ _chunk7QVYU63Ejs.__name.call(void 0, useHelpFilter, "useHelpFilter");
|
|
|
201
201
|
|
|
202
202
|
function HelpSideNav() {
|
|
203
203
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
204
|
-
const generateUrl =
|
|
204
|
+
const generateUrl = _chunkYN4LOVL4js.usePageUrlGenerator.call(void 0, );
|
|
205
205
|
const pathname = _navigation.usePathname.call(void 0, );
|
|
206
206
|
const [articles, setArticles] = _react.useState.call(void 0, []);
|
|
207
207
|
_react.useEffect.call(void 0, () => {
|
|
208
208
|
let active = true;
|
|
209
|
-
|
|
209
|
+
_chunk6J2SQZ3Gjs.HowToService.findPublished().then((list) => active && setArticles(list)).catch(() => active && setArticles([]));
|
|
210
210
|
return () => {
|
|
211
211
|
active = false;
|
|
212
212
|
};
|
|
@@ -282,7 +282,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, HelpSideNav, "HelpSideNav");
|
|
|
282
282
|
function HelpArticleBody(props) {
|
|
283
283
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
284
284
|
const format = _nextintl.useFormatter.call(void 0, );
|
|
285
|
-
const generateUrl =
|
|
285
|
+
const generateUrl = _chunkYN4LOVL4js.usePageUrlGenerator.call(void 0, );
|
|
286
286
|
const { howToType, title, summary, updatedAt, prev, next, children } = props;
|
|
287
287
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "article", { className: "prose dark:prose-invert max-w-none", children: [
|
|
288
288
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: "text-muted-foreground mb-2 text-xs", children: [
|
|
@@ -339,7 +339,7 @@ function HelpTOC({ headings }) {
|
|
|
339
339
|
}, [headings]);
|
|
340
340
|
if (headings.length === 0) return null;
|
|
341
341
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { "aria-label": t("help.toc.title"), className: "hidden lg:block", children: [
|
|
342
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
342
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.MicroLabel, { className: "mb-2", children: t("help.toc.title") }),
|
|
343
343
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "space-y-1 text-sm", children: headings.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { style: { paddingInlineStart: `${(h.depth - 2) * 0.75}rem` }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
344
344
|
"a",
|
|
345
345
|
{
|
|
@@ -360,13 +360,13 @@ _chunk7QVYU63Ejs.__name.call(void 0, HelpTOC, "HelpTOC");
|
|
|
360
360
|
|
|
361
361
|
function HelpHint({ contextKey }) {
|
|
362
362
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
363
|
-
const generateUrl =
|
|
363
|
+
const generateUrl = _chunkYN4LOVL4js.usePageUrlGenerator.call(void 0, );
|
|
364
364
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
365
365
|
const [picked, setPicked] = _react.useState.call(void 0, null);
|
|
366
366
|
const [articles, setArticles] = _react.useState.call(void 0, []);
|
|
367
367
|
_react.useEffect.call(void 0, () => {
|
|
368
368
|
let active2 = true;
|
|
369
|
-
|
|
369
|
+
_chunk6J2SQZ3Gjs.HowToService.findPublished().then((list) => active2 && setArticles(list)).catch(() => active2 && setArticles([]));
|
|
370
370
|
return () => {
|
|
371
371
|
active2 = false;
|
|
372
372
|
};
|
|
@@ -378,7 +378,7 @@ function HelpHint({ contextKey }) {
|
|
|
378
378
|
if (matches.length === 0) return null;
|
|
379
379
|
const active = _nullishCoalesce(picked, () => ( (matches.length === 1 ? matches[0] : null)));
|
|
380
380
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
381
|
-
|
|
381
|
+
_chunkYN4LOVL4js.Sheet,
|
|
382
382
|
{
|
|
383
383
|
open,
|
|
384
384
|
onOpenChange: (o) => {
|
|
@@ -386,11 +386,11 @@ function HelpHint({ contextKey }) {
|
|
|
386
386
|
if (!o) setPicked(null);
|
|
387
387
|
},
|
|
388
388
|
children: [
|
|
389
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
390
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
391
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
392
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
393
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
389
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.SheetTrigger, { render: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.Button, { variant: "ghost", size: "icon-sm", "aria-label": t("help.hint.trigger") }), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.HelpCircleIcon, { className: "h-4 w-4" }) }),
|
|
390
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.SheetContent, { side: "end", className: "w-full max-w-md sm:max-w-lg", children: [
|
|
391
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYN4LOVL4js.SheetHeader, { children: [
|
|
392
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.SheetTitle, { children: active ? active.name : t("help.hint.pickArticle") }),
|
|
393
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.SheetDescription, { children: _nullishCoalesce(_optionalChain([active, 'optionalAccess', _4 => _4.summary]), () => ( "")) })
|
|
394
394
|
] }),
|
|
395
395
|
active ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-4 space-y-3", children: [
|
|
396
396
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-muted-foreground text-sm", children: active.summary }),
|
|
@@ -422,18 +422,18 @@ _chunk7QVYU63Ejs.__name.call(void 0, HelpHint, "HelpHint");
|
|
|
422
422
|
|
|
423
423
|
function HelpSearchResultRow({ result, onSelect }) {
|
|
424
424
|
const t = _nextintl.useTranslations.call(void 0, );
|
|
425
|
-
const generateUrl =
|
|
425
|
+
const generateUrl = _chunkYN4LOVL4js.usePageUrlGenerator.call(void 0, );
|
|
426
426
|
const [article, setArticle] = _react.useState.call(void 0, null);
|
|
427
427
|
_react.useEffect.call(void 0, () => {
|
|
428
428
|
let active = true;
|
|
429
|
-
|
|
429
|
+
_chunk6J2SQZ3Gjs.HowToService.findOne({ id: result.id }).then((a) => active && setArticle(a)).catch(() => active && setArticle(null));
|
|
430
430
|
return () => {
|
|
431
431
|
active = false;
|
|
432
432
|
};
|
|
433
433
|
}, [result.id]);
|
|
434
434
|
if (!article) {
|
|
435
435
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
436
|
-
|
|
436
|
+
_chunkYN4LOVL4js.CommandItem,
|
|
437
437
|
{
|
|
438
438
|
value: result.id,
|
|
439
439
|
disabled: true,
|
|
@@ -442,7 +442,7 @@ function HelpSearchResultRow({ result, onSelect }) {
|
|
|
442
442
|
}
|
|
443
443
|
);
|
|
444
444
|
}
|
|
445
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
445
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYN4LOVL4js.CommandItem, { value: result.id, onSelect, className: "cursor-pointer p-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
446
446
|
_link2.default,
|
|
447
447
|
{
|
|
448
448
|
href: generateUrl({ page: `/help/${article.howToType}/${article.slug}` }),
|
|
@@ -520,5 +520,6 @@ var HELP_I18N_KEYS = [
|
|
|
520
520
|
|
|
521
521
|
|
|
522
522
|
|
|
523
|
-
|
|
523
|
+
|
|
524
|
+
exports.HELP_I18N_KEYS = HELP_I18N_KEYS; exports.HELP_MODES = _chunkYBZVWLPHjs.HELP_MODES; exports.HelpArticleBody = HelpArticleBody; exports.HelpAskAi = HelpAskAi; exports.HelpAssistantSheet = HelpAssistantSheet; exports.HelpHeader = HelpHeader; exports.HelpHint = HelpHint; exports.HelpProvider = HelpProvider; exports.HelpSearchResultRow = HelpSearchResultRow; exports.HelpSideNav = HelpSideNav; exports.HelpTOC = HelpTOC; exports.articleUrl = articleUrl; exports.modeUrl = modeUrl; exports.useHelp = useHelp; exports.useHelpFilter = useHelpFilter;
|
|
524
525
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/features/help/index.js","../../../src/features/help/contexts/HelpContext.tsx","../../../src/features/help/components/HelpHeader.tsx","../../../src/features/help/components/HelpAskAi.tsx","../../../src/features/help/components/HelpAssistantSheet.tsx","../../../src/features/help/components/HelpSideNav.tsx","../../../src/features/help/hooks/useHelpFilter.ts","../../../src/features/help/components/HelpArticleBody.tsx","../../../src/features/help/components/HelpTOC.tsx","../../../src/features/help/components/HelpHint.tsx","../../../src/features/help/components/HelpSearchResultRow.tsx","../../../src/features/help/utils/articleUrl.ts","../../../src/features/help/i18n-keys.ts"],"names":["jsx","useTranslations","jsxs","Fragment","useState","useMemo","Link","active"],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/features/help/index.js","sourcesContent":[null,"\"use client\";\nimport { createContext, useContext, ReactNode } from \"react\";\nimport { _getStaticHelpContent } from \"../../../core/registry/helpStore\";\nimport type { HelpContentConfig } from \"../interfaces/help-content-config.interface\";\n\nconst HelpContext = createContext<HelpContentConfig | null>(null);\n\nexport function HelpProvider({ children }: { children: ReactNode }) {\n const cfg = _getStaticHelpContent<HelpContentConfig>();\n if (!cfg) {\n throw new Error(\n \"Help content not configured — call configureJsonApi({ helpContent: {...} }) before importing help components.\",\n );\n }\n return <HelpContext.Provider value={cfg}>{children}</HelpContext.Provider>;\n}\n\nexport function useHelp(): HelpContentConfig {\n const ctx = useContext(HelpContext);\n if (!ctx) {\n throw new Error(\"useHelp() called outside <HelpProvider>. Wrap your help route group with <HelpProvider>.\");\n }\n return ctx;\n}\n","\"use client\";\nimport Link from \"next/link\";\nimport Image from \"next/image\";\nimport { useTranslations } from \"next-intl\";\nimport { useCurrentUserContext } from \"../../user/contexts/CurrentUserContext\";\nimport { buttonVariants } from \"../../../shadcnui\";\nimport { useHelp } from \"../contexts/HelpContext\";\nimport { HelpAskAi } from \"./HelpAskAi\";\n\nexport function HelpHeader() {\n const t = useTranslations();\n const { currentUser } = useCurrentUserContext();\n const { brand } = useHelp();\n const logo = brand?.logo;\n const label = brand?.label ?? \"Help\";\n const appHref = brand?.appHref ?? \"/\";\n\n return (\n <header className=\"border-border bg-background flex items-center justify-between border-b px-4 py-3\">\n <Link href=\"/help\" className=\"flex items-center gap-2\">\n {logo ? <Image src={logo} alt={label} width={28} height={28} /> : null}\n <span className=\"text-base font-semibold\">\n {label} · {t(\"help.footerLink\")}\n </span>\n </Link>\n <div className=\"flex items-center gap-2\">\n <HelpAskAi />\n {/* Styled Links, not <Button render={<Link/>} nativeButton={false}>. Base UI's\n Button primitive warns when rendered as a non-button, and nativeButton={false}\n silences that by stamping role=\"button\" onto the anchor — so a control that\n navigates would announce as a button. Both of these navigate, so they stay\n real links and only borrow the button styling. */}\n {currentUser ? (\n <Link href={appHref} className={buttonVariants({ variant: \"outline\", size: \"sm\" })}>\n {t(\"help.header.openApp\")}\n </Link>\n ) : (\n <Link href=\"/login\" className={buttonVariants({ variant: \"outline\", size: \"sm\" })}>\n {t(\"help.header.login\")}\n </Link>\n )}\n </div>\n </header>\n );\n}\n","\"use client\";\nimport { useState } from \"react\";\nimport { SparklesIcon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport { useCurrentUserContext } from \"../../user/contexts/CurrentUserContext\";\nimport { Button, Tooltip, TooltipTrigger, TooltipContent } from \"../../../shadcnui\";\nimport { HelpAssistantSheet } from \"./HelpAssistantSheet\";\n\nexport function HelpAskAi() {\n const t = useTranslations();\n const { currentUser } = useCurrentUserContext();\n const [open, setOpen] = useState(false);\n const disabled = !currentUser;\n\n if (disabled) {\n return (\n <Tooltip>\n <TooltipTrigger render={<Button variant=\"outline\" size=\"sm\" disabled />}>\n <SparklesIcon className=\"h-4 w-4\" />\n {t(\"help.askAi.button\")}\n </TooltipTrigger>\n <TooltipContent>{t(\"help.askAi.loginTooltip\")}</TooltipContent>\n </Tooltip>\n );\n }\n\n return (\n <>\n <Button variant=\"outline\" size=\"sm\" onClick={() => setOpen(true)}>\n <SparklesIcon className=\"h-4 w-4\" />\n {t(\"help.askAi.button\")}\n </Button>\n <HelpAssistantSheet open={open} onOpenChange={setOpen} />\n </>\n );\n}\n","\"use client\";\nimport { useTranslations } from \"next-intl\";\nimport { Sheet, SheetContent, SheetHeader, SheetTitle, SheetDescription } from \"../../../shadcnui\";\nimport { AssistantProvider, useAssistantContext } from \"../../assistant/contexts/AssistantContext\";\nimport { AssistantThread } from \"../../assistant/components/parts/AssistantThread\";\nimport { AssistantComposer } from \"../../assistant/components/parts/AssistantComposer\";\nimport { AssistantEmptyState } from \"../../assistant/components/parts/AssistantEmptyState\";\n\nexport function HelpAssistantSheet({ open, onOpenChange }: { open: boolean; onOpenChange: (o: boolean) => void }) {\n return (\n <Sheet open={open} onOpenChange={onOpenChange}>\n <SheetContent\n side=\"end\"\n /* rtl-ok: keyed to the resolved physical side (\"right\" in LTR, \"left\" in RTL) */\n className=\"flex w-full flex-col data-[side=right]:sm:max-w-2xl data-[side=right]:lg:max-w-3xl data-[side=left]:sm:max-w-2xl data-[side=left]:lg:max-w-3xl\"\n >\n <AssistantProvider manageUrl={false}>\n <HelpAssistantSheetBody />\n </AssistantProvider>\n </SheetContent>\n </Sheet>\n );\n}\n\nfunction HelpAssistantSheetBody() {\n const t = useTranslations();\n const ctx = useAssistantContext();\n const showThread = !!ctx.assistant || ctx.sending || ctx.messages.length > 0;\n const send = (content: string) => ctx.sendMessage(content, { howToMode: true });\n\n return (\n <>\n <SheetHeader>\n <SheetTitle>{t(\"help.askAi.sheet.title\")}</SheetTitle>\n <SheetDescription>{t(\"help.askAi.sheet.subtitle\")}</SheetDescription>\n </SheetHeader>\n {!showThread ? (\n <AssistantEmptyState onSend={send} />\n ) : (\n <>\n <AssistantThread\n messages={ctx.messages}\n sending={ctx.sending}\n status={ctx.status}\n onSelectFollowUp={send}\n failedMessageIds={ctx.failedMessageIds}\n onRetry={ctx.retrySend}\n />\n <AssistantComposer onSend={send} disabled={ctx.sending} />\n </>\n )}\n </>\n );\n}\n","\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport Link from \"next/link\";\nimport { usePathname } from \"next/navigation\";\nimport { HELP_MODES } from \"../types/help-article.types\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { useHelpFilter } from \"../hooks/useHelpFilter\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport function HelpSideNav() {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const pathname = usePathname();\n const [articles, setArticles] = useState<HowToInterface[]>([]);\n\n useEffect(() => {\n let active = true;\n HowToService.findPublished()\n .then((list) => active && setArticles(list))\n .catch(() => active && setArticles([]));\n return () => {\n active = false;\n };\n }, []);\n\n // useHelpFilter indexes by title/summary/tags — map HowTo getters into the shape it expects.\n const indexable = useMemo(\n () =>\n articles.map((a) => ({\n id: a.id,\n title: a.name,\n summary: a.summary ?? \"\",\n tags: a.tags,\n mode: a.howToType ?? \"\",\n slug: a.slug ?? \"\",\n })),\n [articles],\n );\n const { query, setQuery, filtered } = useHelpFilter(indexable as any);\n const filtering = query.trim().length > 0;\n\n const groups = useMemo(\n () =>\n HELP_MODES.map((mode) => ({\n mode,\n articles: articles\n .filter((a) => a.howToType === mode && !a.draft)\n .sort((x, y) => (x.order ?? 0) - (y.order ?? 0)),\n })),\n [articles],\n );\n\n const isActive = (mode: string, slug: string) => pathname.endsWith(`/help/${mode}/${slug}`);\n\n return (\n <nav aria-label=\"Help navigation\" className=\"flex h-full flex-col gap-3 overflow-y-auto p-4\">\n <input\n type=\"search\"\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n placeholder={t(\"help.sideNav.filterPlaceholder\")}\n className=\"border-input bg-background w-full rounded-md border px-3 py-2 text-sm\"\n />\n {filtering ? (\n (filtered as any[]).length === 0 ? (\n <p className=\"text-muted-foreground text-sm\">{t(\"help.sideNav.noMatches\")}</p>\n ) : (\n <ul className=\"space-y-1\">\n {(filtered as any[]).map((a) => (\n <li key={a.id}>\n <Link\n href={generateUrl({ page: `/help/${a.mode}/${a.slug}` })}\n className={\n \"hover:bg-muted block rounded px-2 py-1 text-sm \" +\n (isActive(a.mode, a.slug) ? \"bg-muted font-medium\" : \"\")\n }\n >\n {a.title}\n </Link>\n </li>\n ))}\n </ul>\n )\n ) : (\n groups.map((group) => {\n if (group.articles.length === 0) return null;\n return (\n <div key={group.mode}>\n <Link\n href={generateUrl({ page: `/help/${group.mode}` })}\n className=\"text-muted-foreground hover:text-foreground mb-1 block text-xs font-semibold tracking-wider uppercase\"\n >\n {t(`help.modes.${group.mode}`)}\n </Link>\n <ul className=\"space-y-0.5\">\n {group.articles.map((a) => (\n <li key={a.id}>\n <Link\n href={generateUrl({ page: `/help/${a.howToType}/${a.slug}` })}\n className={\n \"hover:bg-muted block rounded px-2 py-1 text-sm \" +\n (isActive(a.howToType ?? \"\", a.slug ?? \"\") ? \"bg-muted font-medium\" : \"\")\n }\n >\n {a.name}\n </Link>\n </li>\n ))}\n </ul>\n </div>\n );\n })\n )}\n </nav>\n );\n}\n","\"use client\";\nimport { useMemo, useState } from \"react\";\nimport Fuse from \"fuse.js\";\nimport type { HelpArticle } from \"../types/help-article.types\";\n\nexport function useHelpFilter(articles: readonly HelpArticle[]) {\n const [query, setQuery] = useState(\"\");\n const fuse = useMemo(\n () =>\n new Fuse([...articles], {\n keys: [\n { name: \"title\", weight: 0.5 },\n { name: \"summary\", weight: 0.3 },\n { name: \"tags\", weight: 0.1 },\n { name: \"headings.text\", weight: 0.1 },\n ],\n threshold: 0.4,\n ignoreLocation: true,\n }),\n [articles],\n );\n const filtered = useMemo(() => {\n if (!query.trim()) return [...articles];\n return fuse.search(query).map((r) => r.item);\n }, [query, articles, fuse]);\n return { query, setQuery, filtered };\n}\n","\"use client\";\n\nimport { ReactNode } from \"react\";\nimport Link from \"next/link\";\nimport { useFormatter, useTranslations } from \"next-intl\";\nimport { usePageUrlGenerator } from \"../../../client\";\n\ntype Sibling = { howToType: string; slug: string; title: string };\n\nexport function HelpArticleBody(props: {\n howToType: string;\n title: string;\n summary?: string;\n updatedAt?: string;\n prev?: Sibling | null;\n next?: Sibling | null;\n children: ReactNode;\n}) {\n const t = useTranslations();\n const format = useFormatter();\n const generateUrl = usePageUrlGenerator();\n const { howToType, title, summary, updatedAt, prev, next, children } = props;\n\n return (\n <article className=\"prose dark:prose-invert max-w-none\">\n <nav className=\"text-muted-foreground mb-2 text-xs\">\n <Link href={generateUrl({ page: \"/help\" })}>Help</Link>\n {\" · \"}\n <Link href={generateUrl({ page: `/help/${howToType}` })}>{t(`help.modes.${howToType}`)}</Link>\n </nav>\n <h1>{title}</h1>\n {summary ? <p className=\"text-muted-foreground !mt-0 text-base\">{summary}</p> : null}\n {children}\n <hr className=\"my-6\" />\n {updatedAt ? (\n <div className=\"text-muted-foreground text-xs\">\n <span>\n {t(\"help.article.lastUpdated\", {\n date: format.dateTime(new Date(updatedAt), { dateStyle: \"short\" }),\n })}\n </span>\n </div>\n ) : null}\n <div className=\"mt-4 flex justify-between text-sm\">\n {prev ? (\n <Link href={generateUrl({ page: `/help/${prev.howToType}/${prev.slug}` })}>\n ← {t(\"help.article.previous\")}: {prev.title}\n </Link>\n ) : (\n <span />\n )}\n {next ? (\n <Link href={generateUrl({ page: `/help/${next.howToType}/${next.slug}` })}>\n {t(\"help.article.next\")}: {next.title} →\n </Link>\n ) : (\n <span />\n )}\n </div>\n </article>\n );\n}\n","\"use client\";\nimport { useEffect, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport type { HelpHeading } from \"../types/help-article.types\";\nimport { MicroLabel } from \"../../../components/typography\";\n\nexport function HelpTOC({ headings }: { headings: readonly HelpHeading[] }) {\n const t = useTranslations();\n const [active, setActive] = useState<string | null>(null);\n\n useEffect(() => {\n const observer = new IntersectionObserver(\n (entries) => {\n for (const e of entries) {\n if (e.isIntersecting) setActive(e.target.id);\n }\n },\n { rootMargin: \"0px 0px -70% 0px\", threshold: 0 },\n );\n headings.forEach((h) => {\n const el = document.getElementById(h.slug);\n if (el) observer.observe(el);\n });\n return () => observer.disconnect();\n }, [headings]);\n\n if (headings.length === 0) return null;\n return (\n <nav aria-label={t(\"help.toc.title\")} className=\"hidden lg:block\">\n <MicroLabel className=\"mb-2\">{t(\"help.toc.title\")}</MicroLabel>\n <ul className=\"space-y-1 text-sm\">\n {headings.map((h) => (\n <li key={h.slug} style={{ paddingInlineStart: `${(h.depth - 2) * 0.75}rem` }}>\n <a\n href={`#${h.slug}`}\n className={\n \"block truncate hover:text-foreground \" +\n (active === h.slug ? \"text-foreground font-medium\" : \"text-muted-foreground\")\n }\n >\n {h.text}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n );\n}\n","\"use client\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport Link from \"next/link\";\nimport { HelpCircleIcon } from \"lucide-react\";\nimport {\n Button,\n Sheet,\n SheetContent,\n SheetTrigger,\n SheetHeader,\n SheetTitle,\n SheetDescription,\n} from \"../../../shadcnui\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport function HelpHint({ contextKey }: { contextKey: string }) {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const [open, setOpen] = useState(false);\n const [picked, setPicked] = useState<HowToInterface | null>(null);\n\n const [articles, setArticles] = useState<HowToInterface[]>([]);\n useEffect(() => {\n let active = true;\n HowToService.findPublished()\n .then((list) => active && setArticles(list))\n .catch(() => active && setArticles([]));\n return () => {\n active = false;\n };\n }, []);\n\n const matches = useMemo(\n () => articles.filter((a) => a.contextualKeys.includes(contextKey) && !a.draft),\n [articles, contextKey],\n );\n\n if (matches.length === 0) return null;\n const active = picked ?? (matches.length === 1 ? matches[0] : null);\n\n return (\n <Sheet\n open={open}\n onOpenChange={(o) => {\n setOpen(o);\n if (!o) setPicked(null);\n }}\n >\n <SheetTrigger render={<Button variant=\"ghost\" size=\"icon-sm\" aria-label={t(\"help.hint.trigger\")} />}>\n <HelpCircleIcon className=\"h-4 w-4\" />\n </SheetTrigger>\n <SheetContent side=\"end\" className=\"w-full max-w-md sm:max-w-lg\">\n <SheetHeader>\n <SheetTitle>{active ? active.name : t(\"help.hint.pickArticle\")}</SheetTitle>\n <SheetDescription>{active?.summary ?? \"\"}</SheetDescription>\n </SheetHeader>\n {active ? (\n <div className=\"mt-4 space-y-3\">\n <p className=\"text-muted-foreground text-sm\">{active.summary}</p>\n <Link href={generateUrl({ page: `/help/${active.howToType}/${active.slug}` })} className=\"text-sm\">\n {t(\"help.hint.viewArticle\")}\n </Link>\n </div>\n ) : (\n <ul className=\"mt-4 space-y-1\">\n {matches.map((a) => (\n <li key={a.id}>\n <button\n type=\"button\"\n onClick={() => setPicked(a)}\n className=\"hover:bg-muted block w-full rounded px-2 py-1 text-start text-sm\"\n >\n <div className=\"font-medium\">{a.name}</div>\n <div className=\"text-muted-foreground text-xs\">{a.summary}</div>\n </button>\n </li>\n ))}\n </ul>\n )}\n </SheetContent>\n </Sheet>\n );\n}\n","\"use client\";\nimport Link from \"next/link\";\nimport { useTranslations } from \"next-intl\";\nimport { useEffect, useState } from \"react\";\nimport { LifeBuoyIcon, ArrowUpRightIcon } from \"lucide-react\";\nimport { CommandItem } from \"../../../shadcnui\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport interface HelpSearchResultRowProps {\n result: { id: string; name: string; entityType: string };\n onSelect?: () => void;\n}\n\nexport function HelpSearchResultRow({ result, onSelect }: HelpSearchResultRowProps) {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const [article, setArticle] = useState<HowToInterface | null>(null);\n useEffect(() => {\n let active = true;\n HowToService.findOne({ id: result.id })\n .then((a) => active && setArticle(a))\n .catch(() => active && setArticle(null));\n return () => {\n active = false;\n };\n }, [result.id]);\n\n if (!article) {\n return (\n <CommandItem\n value={result.id}\n disabled\n className=\"text-muted-foreground cursor-not-allowed px-3 py-1.5 text-sm italic\"\n >\n {t(\"help.search.removed\")}\n </CommandItem>\n );\n }\n\n return (\n <CommandItem value={result.id} onSelect={onSelect} className=\"cursor-pointer p-0\">\n <Link\n href={generateUrl({ page: `/help/${article.howToType}/${article.slug}` })}\n className=\"hover:bg-muted flex w-full items-center gap-3 rounded px-3 py-2\"\n >\n <div className=\"bg-muted text-muted-foreground flex h-10 w-10 shrink-0 items-center justify-center rounded-full\">\n <LifeBuoyIcon className=\"h-5 w-5\" />\n </div>\n <div className=\"flex min-w-0 flex-1 flex-col\">\n <span className=\"text-foreground truncate text-sm font-semibold\">{article.name}</span>\n <span className=\"text-muted-foreground truncate text-xs\">\n {t(`help.modes.${article.howToType}`)} · {article.summary}\n </span>\n </div>\n <ArrowUpRightIcon className=\"text-muted-foreground h-5 w-5 shrink-0\" />\n </Link>\n </CommandItem>\n );\n}\n","import type { HelpMode } from \"../types/help-article.types\";\nimport type { usePageUrlGenerator } from \"../../../client\";\n\nexport function articleUrl(\n generateUrl: ReturnType<typeof usePageUrlGenerator>,\n article: { mode: HelpMode; slug: string },\n): string {\n return generateUrl({ page: `/help/${article.mode}/${article.slug}` });\n}\n\nexport function modeUrl(generateUrl: ReturnType<typeof usePageUrlGenerator>, mode: HelpMode): string {\n return generateUrl({ page: `/help/${mode}` });\n}\n","/**\n * The fixed namespace of i18n keys this feature reads via useTranslations/getTranslations.\n * Consuming apps must define each entry in their messages/<locale>.json.\n */\nexport const HELP_I18N_KEYS = [\n \"help.modes.tutorial\",\n \"help.modes.how-to\",\n \"help.modes.reference\",\n \"help.modes.explanation\",\n \"help.sideNav.filterPlaceholder\",\n \"help.sideNav.noMatches\",\n \"help.toc.title\",\n \"help.article.lastUpdated\",\n \"help.article.previous\",\n \"help.article.next\",\n \"help.article.related\",\n \"help.askAi.button\",\n \"help.askAi.loginTooltip\",\n \"help.askAi.sheet.title\",\n \"help.askAi.sheet.subtitle\",\n \"help.header.search\",\n \"help.header.login\",\n \"help.header.openApp\",\n \"help.hint.trigger\",\n \"help.hint.viewArticle\",\n \"help.hint.pickArticle\",\n \"help.landing.heading\",\n \"help.landing.subheading\",\n \"help.landing.featuredTutorials\",\n \"help.landing.browseByMode\",\n \"help.modeIndex.empty\",\n \"help.search.removed\",\n \"help.footerLink\",\n] as const;\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/features/help/index.js","../../../src/features/help/contexts/HelpContext.tsx","../../../src/features/help/components/HelpHeader.tsx","../../../src/features/help/components/HelpAskAi.tsx","../../../src/features/help/components/HelpAssistantSheet.tsx","../../../src/features/help/components/HelpSideNav.tsx","../../../src/features/help/hooks/useHelpFilter.ts","../../../src/features/help/components/HelpArticleBody.tsx","../../../src/features/help/components/HelpTOC.tsx","../../../src/features/help/components/HelpHint.tsx","../../../src/features/help/components/HelpSearchResultRow.tsx","../../../src/features/help/utils/articleUrl.ts","../../../src/features/help/i18n-keys.ts"],"names":["jsx","useTranslations","jsxs","Fragment","useState","useMemo","Link","active"],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/features/help/index.js","sourcesContent":[null,"\"use client\";\nimport { createContext, useContext, ReactNode } from \"react\";\nimport { _getStaticHelpContent } from \"../../../core/registry/helpStore\";\nimport type { HelpContentConfig } from \"../interfaces/help-content-config.interface\";\n\nconst HelpContext = createContext<HelpContentConfig | null>(null);\n\nexport function HelpProvider({ children }: { children: ReactNode }) {\n const cfg = _getStaticHelpContent<HelpContentConfig>();\n if (!cfg) {\n throw new Error(\n \"Help content not configured — call configureJsonApi({ helpContent: {...} }) before importing help components.\",\n );\n }\n return <HelpContext.Provider value={cfg}>{children}</HelpContext.Provider>;\n}\n\nexport function useHelp(): HelpContentConfig {\n const ctx = useContext(HelpContext);\n if (!ctx) {\n throw new Error(\"useHelp() called outside <HelpProvider>. Wrap your help route group with <HelpProvider>.\");\n }\n return ctx;\n}\n","\"use client\";\nimport Link from \"next/link\";\nimport Image from \"next/image\";\nimport { useTranslations } from \"next-intl\";\nimport { useCurrentUserContext } from \"../../user/contexts/CurrentUserContext\";\nimport { buttonVariants } from \"../../../shadcnui\";\nimport { useHelp } from \"../contexts/HelpContext\";\nimport { HelpAskAi } from \"./HelpAskAi\";\n\nexport function HelpHeader() {\n const t = useTranslations();\n const { currentUser } = useCurrentUserContext();\n const { brand } = useHelp();\n const logo = brand?.logo;\n const label = brand?.label ?? \"Help\";\n const appHref = brand?.appHref ?? \"/\";\n\n return (\n <header className=\"border-border bg-background flex items-center justify-between border-b px-4 py-3\">\n <Link href=\"/help\" className=\"flex items-center gap-2\">\n {logo ? <Image src={logo} alt={label} width={28} height={28} /> : null}\n <span className=\"text-base font-semibold\">\n {label} · {t(\"help.footerLink\")}\n </span>\n </Link>\n <div className=\"flex items-center gap-2\">\n <HelpAskAi />\n {/* Styled Links, not <Button render={<Link/>} nativeButton={false}>. Base UI's\n Button primitive warns when rendered as a non-button, and nativeButton={false}\n silences that by stamping role=\"button\" onto the anchor — so a control that\n navigates would announce as a button. Both of these navigate, so they stay\n real links and only borrow the button styling. */}\n {currentUser ? (\n <Link href={appHref} className={buttonVariants({ variant: \"outline\", size: \"sm\" })}>\n {t(\"help.header.openApp\")}\n </Link>\n ) : (\n <Link href=\"/login\" className={buttonVariants({ variant: \"outline\", size: \"sm\" })}>\n {t(\"help.header.login\")}\n </Link>\n )}\n </div>\n </header>\n );\n}\n","\"use client\";\nimport { useState } from \"react\";\nimport { SparklesIcon } from \"lucide-react\";\nimport { useTranslations } from \"next-intl\";\nimport { useCurrentUserContext } from \"../../user/contexts/CurrentUserContext\";\nimport { Button, Tooltip, TooltipTrigger, TooltipContent } from \"../../../shadcnui\";\nimport { HelpAssistantSheet } from \"./HelpAssistantSheet\";\n\nexport function HelpAskAi() {\n const t = useTranslations();\n const { currentUser } = useCurrentUserContext();\n const [open, setOpen] = useState(false);\n const disabled = !currentUser;\n\n if (disabled) {\n return (\n <Tooltip>\n <TooltipTrigger render={<Button variant=\"outline\" size=\"sm\" disabled />}>\n <SparklesIcon className=\"h-4 w-4\" />\n {t(\"help.askAi.button\")}\n </TooltipTrigger>\n <TooltipContent>{t(\"help.askAi.loginTooltip\")}</TooltipContent>\n </Tooltip>\n );\n }\n\n return (\n <>\n <Button variant=\"outline\" size=\"sm\" onClick={() => setOpen(true)}>\n <SparklesIcon className=\"h-4 w-4\" />\n {t(\"help.askAi.button\")}\n </Button>\n <HelpAssistantSheet open={open} onOpenChange={setOpen} />\n </>\n );\n}\n","\"use client\";\nimport { useTranslations } from \"next-intl\";\nimport { Sheet, SheetContent, SheetHeader, SheetTitle, SheetDescription } from \"../../../shadcnui\";\nimport { AssistantProvider, useAssistantContext } from \"../../assistant/contexts/AssistantContext\";\nimport { AssistantThread } from \"../../assistant/components/parts/AssistantThread\";\nimport { AssistantComposer } from \"../../assistant/components/parts/AssistantComposer\";\nimport { AssistantEmptyState } from \"../../assistant/components/parts/AssistantEmptyState\";\n\nexport function HelpAssistantSheet({ open, onOpenChange }: { open: boolean; onOpenChange: (o: boolean) => void }) {\n return (\n <Sheet open={open} onOpenChange={onOpenChange}>\n <SheetContent\n side=\"end\"\n /* rtl-ok: keyed to the resolved physical side (\"right\" in LTR, \"left\" in RTL) */\n className=\"flex w-full flex-col data-[side=right]:sm:max-w-2xl data-[side=right]:lg:max-w-3xl data-[side=left]:sm:max-w-2xl data-[side=left]:lg:max-w-3xl\"\n >\n <AssistantProvider manageUrl={false}>\n <HelpAssistantSheetBody />\n </AssistantProvider>\n </SheetContent>\n </Sheet>\n );\n}\n\nfunction HelpAssistantSheetBody() {\n const t = useTranslations();\n const ctx = useAssistantContext();\n const showThread = !!ctx.assistant || ctx.sending || ctx.messages.length > 0;\n const send = (content: string) => ctx.sendMessage(content, { howToMode: true });\n\n return (\n <>\n <SheetHeader>\n <SheetTitle>{t(\"help.askAi.sheet.title\")}</SheetTitle>\n <SheetDescription>{t(\"help.askAi.sheet.subtitle\")}</SheetDescription>\n </SheetHeader>\n {!showThread ? (\n <AssistantEmptyState onSend={send} />\n ) : (\n <>\n <AssistantThread\n messages={ctx.messages}\n sending={ctx.sending}\n status={ctx.status}\n onSelectFollowUp={send}\n failedMessageIds={ctx.failedMessageIds}\n onRetry={ctx.retrySend}\n />\n <AssistantComposer onSend={send} disabled={ctx.sending} />\n </>\n )}\n </>\n );\n}\n","\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport Link from \"next/link\";\nimport { usePathname } from \"next/navigation\";\nimport { HELP_MODES } from \"../types/help-article.types\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { useHelpFilter } from \"../hooks/useHelpFilter\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport function HelpSideNav() {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const pathname = usePathname();\n const [articles, setArticles] = useState<HowToInterface[]>([]);\n\n useEffect(() => {\n let active = true;\n HowToService.findPublished()\n .then((list) => active && setArticles(list))\n .catch(() => active && setArticles([]));\n return () => {\n active = false;\n };\n }, []);\n\n // useHelpFilter indexes by title/summary/tags — map HowTo getters into the shape it expects.\n const indexable = useMemo(\n () =>\n articles.map((a) => ({\n id: a.id,\n title: a.name,\n summary: a.summary ?? \"\",\n tags: a.tags,\n mode: a.howToType ?? \"\",\n slug: a.slug ?? \"\",\n })),\n [articles],\n );\n const { query, setQuery, filtered } = useHelpFilter(indexable as any);\n const filtering = query.trim().length > 0;\n\n const groups = useMemo(\n () =>\n HELP_MODES.map((mode) => ({\n mode,\n articles: articles\n .filter((a) => a.howToType === mode && !a.draft)\n .sort((x, y) => (x.order ?? 0) - (y.order ?? 0)),\n })),\n [articles],\n );\n\n const isActive = (mode: string, slug: string) => pathname.endsWith(`/help/${mode}/${slug}`);\n\n return (\n <nav aria-label=\"Help navigation\" className=\"flex h-full flex-col gap-3 overflow-y-auto p-4\">\n <input\n type=\"search\"\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n placeholder={t(\"help.sideNav.filterPlaceholder\")}\n className=\"border-input bg-background w-full rounded-md border px-3 py-2 text-sm\"\n />\n {filtering ? (\n (filtered as any[]).length === 0 ? (\n <p className=\"text-muted-foreground text-sm\">{t(\"help.sideNav.noMatches\")}</p>\n ) : (\n <ul className=\"space-y-1\">\n {(filtered as any[]).map((a) => (\n <li key={a.id}>\n <Link\n href={generateUrl({ page: `/help/${a.mode}/${a.slug}` })}\n className={\n \"hover:bg-muted block rounded px-2 py-1 text-sm \" +\n (isActive(a.mode, a.slug) ? \"bg-muted font-medium\" : \"\")\n }\n >\n {a.title}\n </Link>\n </li>\n ))}\n </ul>\n )\n ) : (\n groups.map((group) => {\n if (group.articles.length === 0) return null;\n return (\n <div key={group.mode}>\n <Link\n href={generateUrl({ page: `/help/${group.mode}` })}\n className=\"text-muted-foreground hover:text-foreground mb-1 block text-xs font-semibold tracking-wider uppercase\"\n >\n {t(`help.modes.${group.mode}`)}\n </Link>\n <ul className=\"space-y-0.5\">\n {group.articles.map((a) => (\n <li key={a.id}>\n <Link\n href={generateUrl({ page: `/help/${a.howToType}/${a.slug}` })}\n className={\n \"hover:bg-muted block rounded px-2 py-1 text-sm \" +\n (isActive(a.howToType ?? \"\", a.slug ?? \"\") ? \"bg-muted font-medium\" : \"\")\n }\n >\n {a.name}\n </Link>\n </li>\n ))}\n </ul>\n </div>\n );\n })\n )}\n </nav>\n );\n}\n","\"use client\";\nimport { useMemo, useState } from \"react\";\nimport Fuse from \"fuse.js\";\nimport type { HelpArticle } from \"../types/help-article.types\";\n\nexport function useHelpFilter(articles: readonly HelpArticle[]) {\n const [query, setQuery] = useState(\"\");\n const fuse = useMemo(\n () =>\n new Fuse([...articles], {\n keys: [\n { name: \"title\", weight: 0.5 },\n { name: \"summary\", weight: 0.3 },\n { name: \"tags\", weight: 0.1 },\n { name: \"headings.text\", weight: 0.1 },\n ],\n threshold: 0.4,\n ignoreLocation: true,\n }),\n [articles],\n );\n const filtered = useMemo(() => {\n if (!query.trim()) return [...articles];\n return fuse.search(query).map((r) => r.item);\n }, [query, articles, fuse]);\n return { query, setQuery, filtered };\n}\n","\"use client\";\n\nimport { ReactNode } from \"react\";\nimport Link from \"next/link\";\nimport { useFormatter, useTranslations } from \"next-intl\";\nimport { usePageUrlGenerator } from \"../../../client\";\n\ntype Sibling = { howToType: string; slug: string; title: string };\n\nexport function HelpArticleBody(props: {\n howToType: string;\n title: string;\n summary?: string;\n updatedAt?: string;\n prev?: Sibling | null;\n next?: Sibling | null;\n children: ReactNode;\n}) {\n const t = useTranslations();\n const format = useFormatter();\n const generateUrl = usePageUrlGenerator();\n const { howToType, title, summary, updatedAt, prev, next, children } = props;\n\n return (\n <article className=\"prose dark:prose-invert max-w-none\">\n <nav className=\"text-muted-foreground mb-2 text-xs\">\n <Link href={generateUrl({ page: \"/help\" })}>Help</Link>\n {\" · \"}\n <Link href={generateUrl({ page: `/help/${howToType}` })}>{t(`help.modes.${howToType}`)}</Link>\n </nav>\n <h1>{title}</h1>\n {summary ? <p className=\"text-muted-foreground !mt-0 text-base\">{summary}</p> : null}\n {children}\n <hr className=\"my-6\" />\n {updatedAt ? (\n <div className=\"text-muted-foreground text-xs\">\n <span>\n {t(\"help.article.lastUpdated\", {\n date: format.dateTime(new Date(updatedAt), { dateStyle: \"short\" }),\n })}\n </span>\n </div>\n ) : null}\n <div className=\"mt-4 flex justify-between text-sm\">\n {prev ? (\n <Link href={generateUrl({ page: `/help/${prev.howToType}/${prev.slug}` })}>\n ← {t(\"help.article.previous\")}: {prev.title}\n </Link>\n ) : (\n <span />\n )}\n {next ? (\n <Link href={generateUrl({ page: `/help/${next.howToType}/${next.slug}` })}>\n {t(\"help.article.next\")}: {next.title} →\n </Link>\n ) : (\n <span />\n )}\n </div>\n </article>\n );\n}\n","\"use client\";\nimport { useEffect, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport type { HelpHeading } from \"../types/help-article.types\";\nimport { MicroLabel } from \"../../../components/typography\";\n\nexport function HelpTOC({ headings }: { headings: readonly HelpHeading[] }) {\n const t = useTranslations();\n const [active, setActive] = useState<string | null>(null);\n\n useEffect(() => {\n const observer = new IntersectionObserver(\n (entries) => {\n for (const e of entries) {\n if (e.isIntersecting) setActive(e.target.id);\n }\n },\n { rootMargin: \"0px 0px -70% 0px\", threshold: 0 },\n );\n headings.forEach((h) => {\n const el = document.getElementById(h.slug);\n if (el) observer.observe(el);\n });\n return () => observer.disconnect();\n }, [headings]);\n\n if (headings.length === 0) return null;\n return (\n <nav aria-label={t(\"help.toc.title\")} className=\"hidden lg:block\">\n <MicroLabel className=\"mb-2\">{t(\"help.toc.title\")}</MicroLabel>\n <ul className=\"space-y-1 text-sm\">\n {headings.map((h) => (\n <li key={h.slug} style={{ paddingInlineStart: `${(h.depth - 2) * 0.75}rem` }}>\n <a\n href={`#${h.slug}`}\n className={\n \"block truncate hover:text-foreground \" +\n (active === h.slug ? \"text-foreground font-medium\" : \"text-muted-foreground\")\n }\n >\n {h.text}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n );\n}\n","\"use client\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslations } from \"next-intl\";\nimport Link from \"next/link\";\nimport { HelpCircleIcon } from \"lucide-react\";\nimport {\n Button,\n Sheet,\n SheetContent,\n SheetTrigger,\n SheetHeader,\n SheetTitle,\n SheetDescription,\n} from \"../../../shadcnui\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport function HelpHint({ contextKey }: { contextKey: string }) {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const [open, setOpen] = useState(false);\n const [picked, setPicked] = useState<HowToInterface | null>(null);\n\n const [articles, setArticles] = useState<HowToInterface[]>([]);\n useEffect(() => {\n let active = true;\n HowToService.findPublished()\n .then((list) => active && setArticles(list))\n .catch(() => active && setArticles([]));\n return () => {\n active = false;\n };\n }, []);\n\n const matches = useMemo(\n () => articles.filter((a) => a.contextualKeys.includes(contextKey) && !a.draft),\n [articles, contextKey],\n );\n\n if (matches.length === 0) return null;\n const active = picked ?? (matches.length === 1 ? matches[0] : null);\n\n return (\n <Sheet\n open={open}\n onOpenChange={(o) => {\n setOpen(o);\n if (!o) setPicked(null);\n }}\n >\n <SheetTrigger render={<Button variant=\"ghost\" size=\"icon-sm\" aria-label={t(\"help.hint.trigger\")} />}>\n <HelpCircleIcon className=\"h-4 w-4\" />\n </SheetTrigger>\n <SheetContent side=\"end\" className=\"w-full max-w-md sm:max-w-lg\">\n <SheetHeader>\n <SheetTitle>{active ? active.name : t(\"help.hint.pickArticle\")}</SheetTitle>\n <SheetDescription>{active?.summary ?? \"\"}</SheetDescription>\n </SheetHeader>\n {active ? (\n <div className=\"mt-4 space-y-3\">\n <p className=\"text-muted-foreground text-sm\">{active.summary}</p>\n <Link href={generateUrl({ page: `/help/${active.howToType}/${active.slug}` })} className=\"text-sm\">\n {t(\"help.hint.viewArticle\")}\n </Link>\n </div>\n ) : (\n <ul className=\"mt-4 space-y-1\">\n {matches.map((a) => (\n <li key={a.id}>\n <button\n type=\"button\"\n onClick={() => setPicked(a)}\n className=\"hover:bg-muted block w-full rounded px-2 py-1 text-start text-sm\"\n >\n <div className=\"font-medium\">{a.name}</div>\n <div className=\"text-muted-foreground text-xs\">{a.summary}</div>\n </button>\n </li>\n ))}\n </ul>\n )}\n </SheetContent>\n </Sheet>\n );\n}\n","\"use client\";\nimport Link from \"next/link\";\nimport { useTranslations } from \"next-intl\";\nimport { useEffect, useState } from \"react\";\nimport { LifeBuoyIcon, ArrowUpRightIcon } from \"lucide-react\";\nimport { CommandItem } from \"../../../shadcnui\";\nimport { usePageUrlGenerator } from \"../../../client\";\nimport { HowToService } from \"../../how-to/data/HowToService\";\nimport type { HowToInterface } from \"../../how-to/data/HowToInterface\";\n\nexport interface HelpSearchResultRowProps {\n result: { id: string; name: string; entityType: string };\n onSelect?: () => void;\n}\n\nexport function HelpSearchResultRow({ result, onSelect }: HelpSearchResultRowProps) {\n const t = useTranslations();\n const generateUrl = usePageUrlGenerator();\n const [article, setArticle] = useState<HowToInterface | null>(null);\n useEffect(() => {\n let active = true;\n HowToService.findOne({ id: result.id })\n .then((a) => active && setArticle(a))\n .catch(() => active && setArticle(null));\n return () => {\n active = false;\n };\n }, [result.id]);\n\n if (!article) {\n return (\n <CommandItem\n value={result.id}\n disabled\n className=\"text-muted-foreground cursor-not-allowed px-3 py-1.5 text-sm italic\"\n >\n {t(\"help.search.removed\")}\n </CommandItem>\n );\n }\n\n return (\n <CommandItem value={result.id} onSelect={onSelect} className=\"cursor-pointer p-0\">\n <Link\n href={generateUrl({ page: `/help/${article.howToType}/${article.slug}` })}\n className=\"hover:bg-muted flex w-full items-center gap-3 rounded px-3 py-2\"\n >\n <div className=\"bg-muted text-muted-foreground flex h-10 w-10 shrink-0 items-center justify-center rounded-full\">\n <LifeBuoyIcon className=\"h-5 w-5\" />\n </div>\n <div className=\"flex min-w-0 flex-1 flex-col\">\n <span className=\"text-foreground truncate text-sm font-semibold\">{article.name}</span>\n <span className=\"text-muted-foreground truncate text-xs\">\n {t(`help.modes.${article.howToType}`)} · {article.summary}\n </span>\n </div>\n <ArrowUpRightIcon className=\"text-muted-foreground h-5 w-5 shrink-0\" />\n </Link>\n </CommandItem>\n );\n}\n","import type { HelpMode } from \"../types/help-article.types\";\nimport type { usePageUrlGenerator } from \"../../../client\";\n\nexport function articleUrl(\n generateUrl: ReturnType<typeof usePageUrlGenerator>,\n article: { mode: HelpMode; slug: string },\n): string {\n return generateUrl({ page: `/help/${article.mode}/${article.slug}` });\n}\n\nexport function modeUrl(generateUrl: ReturnType<typeof usePageUrlGenerator>, mode: HelpMode): string {\n return generateUrl({ page: `/help/${mode}` });\n}\n","/**\n * The fixed namespace of i18n keys this feature reads via useTranslations/getTranslations.\n * Consuming apps must define each entry in their messages/<locale>.json.\n */\nexport const HELP_I18N_KEYS = [\n \"help.modes.tutorial\",\n \"help.modes.how-to\",\n \"help.modes.reference\",\n \"help.modes.explanation\",\n \"help.sideNav.filterPlaceholder\",\n \"help.sideNav.noMatches\",\n \"help.toc.title\",\n \"help.article.lastUpdated\",\n \"help.article.previous\",\n \"help.article.next\",\n \"help.article.related\",\n \"help.askAi.button\",\n \"help.askAi.loginTooltip\",\n \"help.askAi.sheet.title\",\n \"help.askAi.sheet.subtitle\",\n \"help.header.search\",\n \"help.header.login\",\n \"help.header.openApp\",\n \"help.hint.trigger\",\n \"help.hint.viewArticle\",\n \"help.hint.pickArticle\",\n \"help.landing.heading\",\n \"help.landing.subheading\",\n \"help.landing.featuredTutorials\",\n \"help.landing.browseByMode\",\n \"help.modeIndex.empty\",\n \"help.search.removed\",\n \"help.footerLink\",\n] as const;\n"]}
|