@intlayer/design-system 9.0.0-canary.3 → 9.0.0-canary.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/esm/api/hooks/utils.mjs +1 -1
  2. package/dist/esm/api/index.mjs +2 -2
  3. package/dist/esm/api/useAuth/useOAuth2.mjs +2 -2
  4. package/dist/esm/api/useAuth/useSession.mjs +2 -2
  5. package/dist/esm/components/Breadcrumb/index.mjs +1 -1
  6. package/dist/esm/components/CollapsibleTable/CollapsibleTable.mjs +1 -1
  7. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs +1 -1
  8. package/dist/esm/components/DictionaryEditor/DictionaryEditor.mjs +1 -1
  9. package/dist/esm/components/DictionaryEditor/NodeWrapper/BooleanWrapper.mjs +1 -1
  10. package/dist/esm/components/DictionaryEditor/NodeWrapper/FileWrapper.mjs +1 -1
  11. package/dist/esm/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.mjs.map +1 -1
  12. package/dist/esm/components/DictionaryEditor/NodeWrapper/NumberWrapper.mjs +1 -1
  13. package/dist/esm/components/DictionaryEditor/NodeWrapper/StringWrapper.mjs +1 -1
  14. package/dist/esm/components/DictionaryEditor/NodeWrapper/index.mjs +1 -1
  15. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs +2 -2
  16. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +2 -2
  17. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +1 -1
  18. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +6 -6
  19. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +1 -1
  20. package/dist/esm/components/DictionaryFieldEditor/JSONEditor.mjs +1 -1
  21. package/dist/esm/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs +1 -1
  22. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +2 -2
  23. package/dist/esm/components/DictionaryFieldEditor/StructureEditor.mjs +1 -1
  24. package/dist/esm/components/DictionaryFieldEditor/StructureView/StructureView.mjs +1 -1
  25. package/dist/esm/components/Form/elements/OTPElement.mjs +1 -1
  26. package/dist/esm/components/Input/OTPInput.mjs +1 -1
  27. package/dist/esm/components/Link/Link.mjs +1 -1
  28. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +1 -1
  29. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs +1 -1
  30. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs.map +1 -1
  31. package/dist/esm/components/MarkdownEditor/generative/AISelector.mjs +1 -1
  32. package/dist/esm/components/Modal/Modal.mjs +3 -3
  33. package/dist/esm/components/Navbar/MobileNavbar.mjs +1 -1
  34. package/dist/esm/components/Pagination/Pagination.mjs +2 -2
  35. package/dist/esm/components/RightDrawer/RightDrawer.mjs +3 -3
  36. package/dist/esm/components/Tab/Tab.mjs +1 -1
  37. package/dist/esm/components/Toaster/Toast.mjs +2 -2
  38. package/dist/esm/components/index.mjs +3 -3
  39. package/dist/esm/hooks/index.mjs +8 -8
  40. package/dist/esm/providers/ReactQueryProvider.mjs +2 -2
  41. package/dist/esm/utils/cn.mjs +2 -8
  42. package/dist/types/components/Badge/index.d.ts +2 -2
  43. package/dist/types/components/Button/Button.d.ts +2 -2
  44. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts +1 -1
  45. package/dist/types/components/Command/index.d.ts +2 -2
  46. package/dist/types/components/Container/index.d.ts +2 -2
  47. package/dist/types/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.d.ts.map +1 -1
  48. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts +1 -1
  49. package/dist/types/components/Input/Checkbox.d.ts +2 -2
  50. package/dist/types/components/Input/Input.d.ts +1 -1
  51. package/dist/types/components/Input/Radio.d.ts +2 -2
  52. package/dist/types/components/Link/Link.d.ts +1 -1
  53. package/dist/types/components/MarkDownRender/MarkDownRender.d.ts.map +1 -1
  54. package/dist/types/components/Pagination/Pagination.d.ts +1 -1
  55. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts +2 -2
  56. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts +1 -1
  57. package/dist/types/components/TabSelector/TabSelector.d.ts +1 -1
  58. package/dist/types/components/Tag/index.d.ts +1 -1
  59. package/dist/types/components/Toaster/Toast.d.ts +1 -1
  60. package/dist/types/utils/cn.d.ts +2 -7
  61. package/package.json +25 -26
  62. package/dist/esm/utils/cn.mjs.map +0 -1
  63. package/dist/types/utils/cn.d.ts.map +0 -1
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
3
  import { useAuth } from "../useAuth/useAuth.mjs";
4
- import { useConfiguration } from "@intlayer/editor-react";
5
4
  import { useQuery } from "@tanstack/react-query";
5
+ import { useConfiguration } from "@intlayer/editor-react";
6
6
 
7
7
  //#region src/api/hooks/utils.ts
8
8
  const useAuthEnable = ({ requireUser, requireProject, requireOrganization }) => {
@@ -2,10 +2,11 @@ import { useOAuth2 } from "./useAuth/useOAuth2.mjs";
2
2
  import { useSession } from "./useAuth/useSession.mjs";
3
3
  import { useAuth } from "./useAuth/useAuth.mjs";
4
4
  import { useAiAPI, useAssetAPI, useAuditAPI, useBitbucketAPI, useDictionaryAPI, useEditorAPI, useEnvironmentAPI, useGithubAPI, useGitlabAPI, useIntlayerAuth, useIntlayerOAuth, useIntlayerOAuthOptions, useNewsletterAPI, useOAuthAPI, useOrganizationAPI, useProjectAPI, useReviewerAPI, useSearchAPI, useShowcaseProjectAPI, useStripeAPI, useTagAPI, useTranslateAPI, useUserAPI } from "./useIntlayerAPI.mjs";
5
+ import { useAddPasskey, useAskResetPassword, useChangePassword, useDeletePasskey, useDeleteSSOProvider, useDisableTwoFactor, useEnableTwoFactor, useGetUserByAccount, useGetVerifyEmailStatus, useLinkSocial, useListAccounts, useListPasskeys, useListSSOProviders, useLogin, useLogout, useRegister, useRegisterSSO, useResetPassword, useSignInMagicLink, useSignInPasskey, useSignInSSO, useUnlinkAccount, useVerifyBackupCode, useVerifyEmail, useVerifyTotp } from "./hooks/auth.mjs";
6
+ import { useUser } from "./useUser/index.mjs";
5
7
  import { useAskDocQuestion, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditTag, useAutocomplete, useChat, useCustomQuery, useGetAIStats, useTranslateJSONDeclaration } from "./hooks/ai.mjs";
6
8
  import { useDeleteAsset, useGetAssetById, useGetAssets, useUpdateAsset, useUploadAsset } from "./hooks/asset.mjs";
7
9
  import { useAuditScan, useGetRecursiveAuditStatus, useStartRecursiveAudit } from "./hooks/audit.mjs";
8
- import { useAddPasskey, useAskResetPassword, useChangePassword, useDeletePasskey, useDeleteSSOProvider, useDisableTwoFactor, useEnableTwoFactor, useGetUserByAccount, useGetVerifyEmailStatus, useLinkSocial, useListAccounts, useListPasskeys, useListSSOProviders, useLogin, useLogout, useRegister, useRegisterSSO, useResetPassword, useSignInMagicLink, useSignInPasskey, useSignInSSO, useUnlinkAccount, useVerifyBackupCode, useVerifyEmail, useVerifyTotp } from "./hooks/auth.mjs";
9
10
  import { useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos } from "./hooks/bitbucket.mjs";
10
11
  import { useAddDictionary, useDeleteDictionary, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useInfiniteGetDictionaries, usePushDictionaries, useUpdateDictionary } from "./hooks/dictionary.mjs";
11
12
  import { useGetDiscussions, useGetDiscussionsData } from "./hooks/discussions.mjs";
@@ -23,6 +24,5 @@ import { useAcceptAffiliateInvitation, useCancelSubscription, useCreatePortalSes
23
24
  import { useAddTag, useDeleteTag, useGetTags, useUpdateTag } from "./hooks/tag.mjs";
24
25
  import { useFillAllTranslations, usePauseTranslationJob, useResumeTranslationJob, useStopTranslationJob } from "./hooks/translate.mjs";
25
26
  import { useCreateUser, useDeleteUser, useGetUserById, useGetUsers, useUpdateUser, useUploadUserAvatar } from "./hooks/user.mjs";
26
- import { useUser } from "./useUser/index.mjs";
27
27
 
28
28
  export { useAcceptAffiliateInvitation, useAddDictionary, useAddEnvironment, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAiAPI, useAskDocQuestion, useAskResetPassword, useAssetAPI, useAuditAPI, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAuth, useAutocomplete, useBitbucketAPI, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useChat, useContactReviewer, useCreateMission, useCreatePortalSession, useCreatePromoCode, useCreateUser, useCustomQuery, useDeleteAccessKey, useDeleteAsset, useDeleteDictionary, useDeleteEnvironment, useDeleteOrganization, useDeleteOrganizationById, useDeletePasskey, useDeleteProject, useDeleteProjectById, useDeletePromoCode, useDeleteReviewerProfile, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDictionaryAPI, useDisableTwoFactor, useEditorAPI, useEnableTwoFactor, useEnvironmentAPI, useEstimateMission, useFillAllTranslations, useGetAIStats, useGetAdminReviewers, useGetAffiliate, useGetAffiliateAccountSession, useGetAffiliateById, useGetAffiliateInvitation, useGetAffiliateInvitations, useGetAffiliateOnboardingLink, useGetAffiliatePromoCode, useGetAffiliateStats, useGetAffiliates, useGetAssetById, useGetAssets, useGetCIConfig, useGetChatHistory, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetInvoices, useGetMissionById, useGetMyMissions, useGetMyReviewerProfile, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPaymentMethod, useGetPricing, useGetProjectInsights, useGetProjects, useGetPromoCodeById, useGetPromoCodes, useGetRecursiveAuditStatus, useGetReviewerById, useGetReviewerMarketplace, useGetReviewerPriceDistribution, useGetReviewerReviews, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAPI, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGithubToken, useGitlabAPI, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useGrantAffiliateAccess, useInfiniteGetDictionaries, useIntlayerAuth, useIntlayerOAuth, useIntlayerOAuthOptions, useLinkSocial, useListAccounts, useListPasskeys, useListSSOProviders, useLogin, useLogout, useMigrateEnvironment, useNewsletterAPI, useOAuth2, useOAuthAPI, useOrganizationAPI, usePauseTranslationJob, useProjectAPI, usePushCIConfig, usePushDictionaries, usePushProjectConfiguration, useRefreshAccessKey, useRegister, useRegisterAsReviewer, useRegisterSSO, useResetPassword, useResetToProductionEnvironment, useResumeTranslationJob, useReviewerAPI, useSearchAPI, useSearchDoc, useSelectEnvironment, useSelectOrganization, useSelectProject, useSendAffiliateInvitation, useSendReviewerMessage, useSession, useShowcaseProjectAPI, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useStripeAPI, useSubmitReview, useSubmitShowcaseProject, useSubscribeToNewsletter, useTagAPI, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateAPI, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnlinkAccount, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateAffiliateStatus, useUpdateAsset, useUpdateDictionary, useUpdateEnvironment, useUpdateMemberAccess, useUpdateMissionStatus, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdatePromoCode, useUpdateReviewerProfile, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useUploadAsset, useUploadReviewerCoverPicture, useUploadReviewerMainPicture, useUploadUserAvatar, useUser, useUserAPI, useValidateReviewerProfile, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary };
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
+ import { useQuery } from "@tanstack/react-query";
4
+ import { editor } from "@intlayer/config/built";
3
5
  import { getOAuthAPI } from "@intlayer/api";
4
6
  import { useConfiguration } from "@intlayer/editor-react";
5
- import { editor } from "@intlayer/config/built";
6
- import { useQuery } from "@tanstack/react-query";
7
7
  import { defu } from "defu";
8
8
 
9
9
  //#region src/api/useAuth/useOAuth2.ts
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
3
  import { getAuthAPI } from "../../libs/auth.mjs";
4
- import { useConfiguration } from "@intlayer/editor-react";
5
- import { editor } from "@intlayer/config/built";
6
4
  import { useQuery, useQueryClient } from "@tanstack/react-query";
5
+ import { editor } from "@intlayer/config/built";
6
+ import { useConfiguration } from "@intlayer/editor-react";
7
7
 
8
8
  //#region src/api/useAuth/useSession.ts
9
9
  const useSession = (sessionProp, intlayerConfiguration) => {
@@ -4,8 +4,8 @@ import { cn } from "../../utils/cn.mjs";
4
4
  import { Button } from "../Button/Button.mjs";
5
5
  import { Link } from "../Link/Link.mjs";
6
6
  import { Fragment, createElement } from "react";
7
- import { ChevronRightIcon } from "lucide-react";
8
7
  import { cva } from "class-variance-authority";
8
+ import { ChevronRightIcon } from "lucide-react";
9
9
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
10
10
  import { getIntlayer } from "intlayer";
11
11
  import { useIntlayer } from "react-intlayer";
@@ -3,8 +3,8 @@
3
3
  import { cn } from "../../utils/cn.mjs";
4
4
  import { MaxHeightSmoother } from "../MaxHeightSmoother/index.mjs";
5
5
  import { useState } from "react";
6
- import { ChevronRight } from "lucide-react";
7
6
  import { cva } from "class-variance-authority";
7
+ import { ChevronRight } from "lucide-react";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
9
9
 
10
10
  //#region src/components/CollapsibleTable/CollapsibleTable.tsx
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
- import { useUser } from "../../api/useUser/index.mjs";
4
3
  import { Button } from "../Button/Button.mjs";
4
+ import { useUser } from "../../api/useUser/index.mjs";
5
5
  import { AutoCompleteTextarea } from "../TextArea/AutocompleteTextArea.mjs";
6
6
  import { useEffect, useState } from "react";
7
7
  import { Check, X } from "lucide-react";
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
3
  import { NodeWrapper } from "./NodeWrapper/index.mjs";
4
- import { useEditedContent, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
5
4
  import { createElement } from "react";
6
5
  import { jsx } from "react/jsx-runtime";
6
+ import { useEditedContent, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
7
7
 
8
8
  //#region src/components/DictionaryEditor/DictionaryEditor.tsx
9
9
  const DictionaryEditor = ({ dictionary, ...props }) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../../utils/cn.mjs";
4
4
  import { SwitchSelector } from "../../SwitchSelector/SwitchSelector.mjs";
5
- import { useEditorLocale } from "@intlayer/editor-react";
6
5
  import { Fragment, jsx } from "react/jsx-runtime";
6
+ import { useEditorLocale } from "@intlayer/editor-react";
7
7
  import { getContentNodeByKeyPath } from "@intlayer/core/dictionaryManipulator";
8
8
 
9
9
  //#region src/components/DictionaryEditor/NodeWrapper/BooleanWrapper.tsx
@@ -1,6 +1,6 @@
1
1
  import { StringWrapper } from "./StringWrapper.mjs";
2
- import { useEditedContent } from "@intlayer/editor-react";
3
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { useEditedContent } from "@intlayer/editor-react";
4
4
  import { getContentNodeByKeyPath } from "@intlayer/core/dictionaryManipulator";
5
5
  import * as NodeTypes from "@intlayer/types/nodeType";
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownWrapper.mjs","names":[],"sources":["../../../../../src/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.tsx"],"sourcesContent":["import type { MarkdownContent } from '@intlayer/core/transpiler';\nimport type { ContentNode } from '@intlayer/types/dictionary';\nimport type { KeyPath } from '@intlayer/types/keyPath';\n\nimport * as NodeTypes from '@intlayer/types/nodeType';\nimport type { FC } from 'react';\nimport { NodeWrapper, type NodeWrapperProps } from './index';\n\ntype MarkdownWrapperProps = Omit<NodeWrapperProps, 'section'> & {\n section: MarkdownContent<ContentNode>;\n};\n\nexport const MarkdownWrapper: FC<MarkdownWrapperProps> = (props) => {\n const { keyPath, section } = props;\n\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.MARKDOWN,\n },\n ];\n\n const subSection = section[NodeTypes.MARKDOWN] as ContentNode;\n\n return (\n <div className=\"ml-2 grid grid-cols-[auto,1fr] gap-2\">\n <NodeWrapper {...props} keyPath={newKeyPath} section={subSection} />\n </div>\n );\n};\n"],"mappings":";;;;;AAYA,MAAa,mBAA6C,UAAU;CAClE,MAAM,EAAE,SAAS,YAAY;CAE7B,MAAM,aAAwB,CAC5B,GAAG,SACH,EACE,MAAM,UAAU,UACjB,CACF;CAED,MAAM,aAAa,QAAQ,UAAU;AAErC,QACE,oBAAC,OAAD;EAAK,WAAU;YACb,oBAAC,aAAD;GAAa,GAAI;GAAO,SAAS;GAAY,SAAS;GAAc;EAChE"}
1
+ {"version":3,"file":"MarkdownWrapper.mjs","names":[],"sources":["../../../../../src/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.tsx"],"sourcesContent":["import type { MarkdownContent } from '@intlayer/core/transpiler';\nimport type { ContentNode } from '@intlayer/types/dictionary';\nimport type { KeyPath } from '@intlayer/types/keyPath';\nimport * as NodeTypes from '@intlayer/types/nodeType';\nimport type { FC } from 'react';\nimport { NodeWrapper, type NodeWrapperProps } from './index';\n\ntype MarkdownWrapperProps = Omit<NodeWrapperProps, 'section'> & {\n section: MarkdownContent<ContentNode>;\n};\n\nexport const MarkdownWrapper: FC<MarkdownWrapperProps> = (props) => {\n const { keyPath, section } = props;\n\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.MARKDOWN,\n },\n ];\n\n const subSection = section[NodeTypes.MARKDOWN] as ContentNode;\n\n return (\n <div className=\"ml-2 grid grid-cols-[auto,1fr] gap-2\">\n <NodeWrapper {...props} keyPath={newKeyPath} section={subSection} />\n </div>\n );\n};\n"],"mappings":";;;;;AAWA,MAAa,mBAA6C,UAAU;CAClE,MAAM,EAAE,SAAS,YAAY;CAE7B,MAAM,aAAwB,CAC5B,GAAG,SACH,EACE,MAAM,UAAU,UACjB,CACF;CAED,MAAM,aAAa,QAAQ,UAAU;AAErC,QACE,oBAAC,OAAD;EAAK,WAAU;YACb,oBAAC,aAAD;GAAa,GAAI;GAAO,SAAS;GAAY,SAAS;GAAc;EAChE"}
@@ -1,7 +1,7 @@
1
1
  import { cn } from "../../../utils/cn.mjs";
2
2
  import { EditableFieldInput } from "../../EditableField/EditableFieldInput.mjs";
3
- import { useEditorLocale } from "@intlayer/editor-react";
4
3
  import { Fragment, jsx } from "react/jsx-runtime";
4
+ import { useEditorLocale } from "@intlayer/editor-react";
5
5
  import { getContentNodeByKeyPath } from "@intlayer/core/dictionaryManipulator";
6
6
 
7
7
  //#region src/components/DictionaryEditor/NodeWrapper/NumberWrapper.tsx
@@ -1,7 +1,7 @@
1
1
  import { cn } from "../../../utils/cn.mjs";
2
2
  import { EditableFieldTextArea } from "../../EditableField/EditableFieldTextArea.mjs";
3
- import { useEditorLocale } from "@intlayer/editor-react";
4
3
  import { Fragment, jsx } from "react/jsx-runtime";
4
+ import { useEditorLocale } from "@intlayer/editor-react";
5
5
  import { getContentNodeByKeyPath } from "@intlayer/core/dictionaryManipulator";
6
6
 
7
7
  //#region src/components/DictionaryEditor/NodeWrapper/StringWrapper.tsx
@@ -13,9 +13,9 @@ import { NestedObjectWrapper } from "./NestedObjectWrapper.mjs";
13
13
  import { NumberWrapper } from "./NumberWrapper.mjs";
14
14
  import { PluralWrapper } from "./PluralWrapper.mjs";
15
15
  import { TranslationWrapper } from "./TranslationWrapper.mjs";
16
- import { useEditorLocale } from "@intlayer/editor-react";
17
16
  import { memo, useMemo } from "react";
18
17
  import { jsx } from "react/jsx-runtime";
18
+ import { useEditorLocale } from "@intlayer/editor-react";
19
19
  import { getContentNodeByKeyPath, getNodeType } from "@intlayer/core/dictionaryManipulator";
20
20
  import * as NodeTypes from "@intlayer/types/nodeType";
21
21
 
@@ -1,17 +1,17 @@
1
1
  'use client';
2
2
 
3
- import { useGetDictionaries } from "../../api/hooks/dictionary.mjs";
4
3
  import { Container } from "../Container/index.mjs";
4
+ import { useGetDictionaries } from "../../api/hooks/dictionary.mjs";
5
5
  import { LocaleSwitcherContent } from "../LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs";
6
6
  import { Pagination } from "../Pagination/Pagination.mjs";
7
7
  import { TextEditorContainer } from "./ContentEditorView/TextEditor.mjs";
8
8
  import { getIsEditableSection } from "./getIsEditableSection.mjs";
9
9
  import { KeyPathBreadcrumb } from "./KeyPathBreadcrumb.mjs";
10
10
  import { NavigationViewNode } from "./NavigationView/NavigationViewNode.mjs";
11
- import { useEditedContent, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
12
11
  import { useCallback, useDeferredValue, useEffect, useMemo, useState, useTransition } from "react";
13
12
  import { jsx, jsxs } from "react/jsx-runtime";
14
13
  import { useIntlayer } from "react-intlayer";
14
+ import { useEditedContent, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
15
15
  import { getContentNodeByKeyPath } from "@intlayer/core/dictionaryManipulator";
16
16
 
17
17
  //#region src/components/DictionaryFieldEditor/ContentEditor.tsx
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
- import { useAuditContentDeclarationField } from "../../../api/hooks/ai.mjs";
4
3
  import { Loader } from "../../Loader/index.mjs";
5
4
  import { Button } from "../../Button/Button.mjs";
6
5
  import { Accordion } from "../../Accordion/Accordion.mjs";
@@ -8,17 +7,18 @@ import { Container } from "../../Container/index.mjs";
8
7
  import { ContentEditorInput as ContentEditorInput$1 } from "../../ContentEditor/ContentEditorInput.mjs";
9
8
  import { ContentEditorTextArea as ContentEditorTextArea$1 } from "../../ContentEditor/ContentEditorTextArea.mjs";
10
9
  import { SwitchSelector } from "../../SwitchSelector/SwitchSelector.mjs";
10
+ import { useAuditContentDeclarationField } from "../../../api/hooks/ai.mjs";
11
11
  import { useLocaleSwitcherContent } from "../../LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs";
12
12
  import { renameKey } from "./object.mjs";
13
13
  import { Label } from "../../Label/index.mjs";
14
14
  import { EnumKeyInput } from "../EnumKeyInput.mjs";
15
15
  import { SafeHtmlRenderer } from "./SafeHtmlRenderer.mjs";
16
- import { useConfiguration, useEditedContent } from "@intlayer/editor-react";
17
16
  import { Fragment, Suspense, lazy, memo, useState } from "react";
18
17
  import { Plus, Trash, WandSparkles } from "lucide-react";
19
18
  import { jsx, jsxs } from "react/jsx-runtime";
20
19
  import { useIntlayer, useLocale } from "react-intlayer";
21
20
  import { getLocaleName } from "@intlayer/core/localization";
21
+ import { useConfiguration, useEditedContent } from "@intlayer/editor-react";
22
22
  import { getEmptyNode, getNodeType } from "@intlayer/core/dictionaryManipulator";
23
23
  import * as NodeTypes from "@intlayer/types/nodeType";
24
24
  import { camelCaseToSentence } from "@intlayer/config/client";
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
+ import { Button } from "../../Button/Button.mjs";
3
4
  import { useSession } from "../../../api/useAuth/useSession.mjs";
4
5
  import { useAddDictionary } from "../../../api/hooks/dictionary.mjs";
5
6
  import { useGetProjects } from "../../../api/hooks/project.mjs";
6
- import { Button } from "../../Button/Button.mjs";
7
7
  import { MultiSelect } from "../../Select/Multiselect.mjs";
8
8
  import { Select } from "../../Select/Select.mjs";
9
9
  import { InputElement } from "../../Form/elements/InputElement.mjs";
@@ -1,16 +1,16 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../../utils/cn.mjs";
4
- import { useSession } from "../../../api/useAuth/useSession.mjs";
5
- import { useAuditContentDeclarationMetadata } from "../../../api/hooks/ai.mjs";
6
- import { useGetDictionaries } from "../../../api/hooks/dictionary.mjs";
7
- import { useGetProjects } from "../../../api/hooks/project.mjs";
8
- import { useGetTags } from "../../../api/hooks/tag.mjs";
9
4
  import { Loader } from "../../Loader/index.mjs";
10
5
  import { Button } from "../../Button/Button.mjs";
11
6
  import { Container } from "../../Container/index.mjs";
12
7
  import { Checkbox } from "../../Input/Checkbox.mjs";
13
8
  import { Input } from "../../Input/Input.mjs";
9
+ import { useSession } from "../../../api/useAuth/useSession.mjs";
10
+ import { useAuditContentDeclarationMetadata } from "../../../api/hooks/ai.mjs";
11
+ import { useGetDictionaries } from "../../../api/hooks/dictionary.mjs";
12
+ import { useGetProjects } from "../../../api/hooks/project.mjs";
13
+ import { useGetTags } from "../../../api/hooks/tag.mjs";
14
14
  import { MultiSelect } from "../../Select/Multiselect.mjs";
15
15
  import { Select } from "../../Select/Select.mjs";
16
16
  import { Pagination } from "../../Pagination/Pagination.mjs";
@@ -28,11 +28,11 @@ import { useForm as useForm$1 } from "../../Form/FormBase.mjs";
28
28
  import { Form } from "../../Form/Form.mjs";
29
29
  import { MonacoCode } from "../../IDE/MonacoCode.mjs";
30
30
  import { useDictionaryDetailsSchema } from "./useDictionaryDetailsSchema.mjs";
31
- import { useEditedContent } from "@intlayer/editor-react";
32
31
  import { useEffect, useMemo, useState } from "react";
33
32
  import { WandSparkles } from "lucide-react";
34
33
  import { jsx, jsxs } from "react/jsx-runtime";
35
34
  import { useIntlayer } from "react-intlayer";
35
+ import { useEditedContent } from "@intlayer/editor-react";
36
36
  import { useWatch } from "react-hook-form";
37
37
  import { AnimatePresence, motion } from "framer-motion";
38
38
 
@@ -10,11 +10,11 @@ import { DictionaryDetailsForm } from "./DictionaryDetails/DictionaryDetailsForm
10
10
  import { JSONEditor } from "./JSONEditor.mjs";
11
11
  import { SaveForm } from "./SaveForm/SaveForm.mjs";
12
12
  import { StructureEditor } from "./StructureEditor.mjs";
13
- import { useConfiguration, useDictionariesRecordActions, useFocusUnmergedDictionary } from "@intlayer/editor-react";
14
13
  import { useEffect, useState } from "react";
15
14
  import { ArrowLeft } from "lucide-react";
16
15
  import { jsx, jsxs } from "react/jsx-runtime";
17
16
  import { useIntlayer } from "react-intlayer";
17
+ import { useConfiguration, useDictionariesRecordActions, useFocusUnmergedDictionary } from "@intlayer/editor-react";
18
18
 
19
19
  //#region src/components/DictionaryFieldEditor/DictionaryFieldEditor.tsx
20
20
  const DictionaryFieldEditor = ({ dictionary, onClickDictionaryList, isDarkMode, mode, onDelete, onSave, showReturnButton = true, rightContent }) => {
@@ -1,6 +1,6 @@
1
1
  import { MonacoCode } from "../IDE/MonacoCode.mjs";
2
- import { useEditedContent } from "@intlayer/editor-react";
3
2
  import { jsx } from "react/jsx-runtime";
3
+ import { useEditedContent } from "@intlayer/editor-react";
4
4
 
5
5
  //#region src/components/DictionaryFieldEditor/JSONEditor.tsx
6
6
  const JSONEditor = ({ dictionary, isDarkMode }) => {
@@ -2,11 +2,11 @@ import { Button } from "../../Button/Button.mjs";
2
2
  import { Accordion } from "../../Accordion/Accordion.mjs";
3
3
  import { useLocaleSwitcherContent } from "../../LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs";
4
4
  import { getIsEditableSection } from "../getIsEditableSection.mjs";
5
- import { useEditedContentActions, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
6
5
  import { useState } from "react";
7
6
  import { ChevronRight, Plus } from "lucide-react";
8
7
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
9
8
  import { useIntlayer } from "react-intlayer";
9
+ import { useEditedContentActions, useEditorLocale, useFocusUnmergedDictionary } from "@intlayer/editor-react";
10
10
  import { getContentNodeByKeyPath, getEmptyNode, getNodeType } from "@intlayer/core/dictionaryManipulator";
11
11
  import * as NodeTypes from "@intlayer/types/nodeType";
12
12
  import { isSameKeyPath } from "@intlayer/core/utils";
@@ -1,17 +1,17 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../../utils/cn.mjs";
4
+ import { Button } from "../../Button/Button.mjs";
4
5
  import { useSession } from "../../../api/useAuth/useSession.mjs";
5
6
  import { useAuth } from "../../../api/useAuth/useAuth.mjs";
6
7
  import { useDeleteDictionary, usePushDictionaries } from "../../../api/hooks/dictionary.mjs";
7
8
  import { useWriteDictionary } from "../../../api/hooks/editor.mjs";
8
- import { Button } from "../../Button/Button.mjs";
9
9
  import { Modal } from "../../Modal/Modal.mjs";
10
- import { useDictionariesRecordActions, useEditedContent } from "@intlayer/editor-react";
11
10
  import { useState } from "react";
12
11
  import { ArrowUpFromLine, Download, RotateCcw, Save, Trash } from "lucide-react";
13
12
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
14
13
  import { useIntlayer } from "react-intlayer";
14
+ import { useDictionariesRecordActions, useEditedContent } from "@intlayer/editor-react";
15
15
 
16
16
  //#region src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx
17
17
  const SaveForm = ({ dictionary, mode, className, onDelete, onSave, ...props }) => {
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
3
  import { NodeView } from "./StructureView/StructureView.mjs";
4
- import { useEditedContent } from "@intlayer/editor-react";
5
4
  import { jsx } from "react/jsx-runtime";
5
+ import { useEditedContent } from "@intlayer/editor-react";
6
6
 
7
7
  //#region src/components/DictionaryFieldEditor/StructureEditor.tsx
8
8
  const StructureEditor = ({ dictionary }) => {
@@ -4,10 +4,10 @@ import { Button } from "../../Button/Button.mjs";
4
4
  import { Container } from "../../Container/index.mjs";
5
5
  import { EditableFieldInput } from "../../EditableField/EditableFieldInput.mjs";
6
6
  import { NodeTypeSelector } from "../NodeTypeSelector.mjs";
7
- import { useConfiguration, useEditedContentActions, useFocusUnmergedDictionary } from "@intlayer/editor-react";
8
7
  import { Plus, Trash } from "lucide-react";
9
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
9
  import { useIntlayer } from "react-intlayer";
10
+ import { useConfiguration, useEditedContentActions, useFocusUnmergedDictionary } from "@intlayer/editor-react";
11
11
  import { getDefaultNode, getNodeChildren, getNodeType } from "@intlayer/core/dictionaryManipulator";
12
12
  import * as NodeTypes from "@intlayer/types/nodeType";
13
13
  import { isSameKeyPath } from "@intlayer/core/utils";
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
- import { useItemSelector } from "../../../hooks/useItemSelector.mjs";
4
3
  import { InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot } from "../../Input/OTPInput.mjs";
4
+ import { useItemSelector } from "../../../hooks/useItemSelector.mjs";
5
5
  import { FormField, useFormField } from "../FormField.mjs";
6
6
  import { FormItemLayout } from "../layout/FormItemLayout.mjs";
7
7
  import { useEffect, useRef } from "react";
@@ -3,8 +3,8 @@
3
3
  import { cn } from "../../utils/cn.mjs";
4
4
  import { Button } from "../Button/Button.mjs";
5
5
  import { createContext, useContext, useEffect, useRef, useState } from "react";
6
- import { MinusIcon } from "lucide-react";
7
6
  import { cva } from "class-variance-authority";
7
+ import { MinusIcon } from "lucide-react";
8
8
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
9
9
 
10
10
  //#region src/components/Input/OTPInput.tsx
@@ -1,7 +1,7 @@
1
1
  import { cn } from "../../utils/cn.mjs";
2
2
  import { isValidElement } from "react";
3
- import { ExternalLink, MoveRight } from "lucide-react";
4
3
  import { cva } from "class-variance-authority";
4
+ import { ExternalLink, MoveRight } from "lucide-react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  import { getLocalizedUrl } from "@intlayer/core/localization";
7
7
 
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
 
3
- import { usePersistedStore } from "../../hooks/usePersistedStore.mjs";
4
3
  import { Button } from "../Button/Button.mjs";
5
4
  import { Container } from "../Container/index.mjs";
6
5
  import { DropDown } from "../DropDown/index.mjs";
7
6
  import { Input } from "../Input/Input.mjs";
8
7
  import { SwitchSelector } from "../SwitchSelector/SwitchSelector.mjs";
8
+ import { usePersistedStore } from "../../hooks/usePersistedStore.mjs";
9
9
  import { useLocaleSwitcherContent } from "./LocaleSwitcherContentContext.mjs";
10
10
  import { useMemo, useRef, useState } from "react";
11
11
  import { Check, Globe, MoveVertical } from "lucide-react";
@@ -50,7 +50,7 @@ const StrongRenderer = (props) => /* @__PURE__ */ jsx("strong", {
50
50
  const MemoizedCodeBlock = memo(({ className, children, isDarkMode, lang, ...rest }) => {
51
51
  const content = String(children ?? "").replace(/\n$/, "");
52
52
  if (!!!className) return /* @__PURE__ */ jsx("code", {
53
- className: "scale-80 rounded-md border border-neutral/30 bg-card/60 box-decoration-clone px-1.5 py-0.5 font-mono",
53
+ className: "inline-block scale-80 rounded-lg border border-neutral/30 bg-card/60 box-decoration-clone px-1.5 py-0.5 font-mono",
54
54
  children: content.replace(/&(?:amp;)?#(\d+);/g, (_, code) => String.fromCharCode(parseInt(code, 10)))
55
55
  });
56
56
  const language = className?.replace(/lang(?:uage)?-/, "") || "plaintext";
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.mjs","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"sourcesContent":["import type { LocalesValues } from '@intlayer/types/module_augmentation';\nimport { cn } from '@utils/cn';\nimport type { ComponentProps, ComponentPropsWithoutRef, FC } from 'react';\nimport { memo } from 'react';\nimport {\n type MarkdownRenderer as MarkdownRendererIntlayer,\n type ParsedMarkdown,\n renderMarkdown,\n} from 'react-intlayer/markdown';\n\nexport type { ParsedMarkdown };\n\nimport type { BundledLanguage } from 'shiki/bundle/web';\nimport { H1, H2, H3, H4, H5, H6 } from '../Headers';\nimport { Code } from '../IDE/Code';\nimport { CodeProvider } from '../IDE/CodeContext';\nimport { Link } from '../Link';\nimport { Tab } from '../Tab';\nimport { TabProvider } from '../Tab/TabContext';\nimport { Hr, SmartTable, Td, Th, Tr } from '../Table';\nimport { MarkDownIframe } from './MarkDownIframe';\n\n// Extracted, stable component renderers\nconst H1Renderer = (props: ComponentProps<'h1'>) => (\n <H1 isClickable className=\"mb-16 mb-8 text-text\" {...props} />\n);\nconst H2Renderer = (props: ComponentProps<'h2'>) => (\n <H2 isClickable className=\"mt-16 text-text\" {...props} />\n);\nconst H3Renderer = (props: ComponentProps<'h3'>) => (\n <H3 isClickable className=\"mt-5 text-text\" {...props} />\n);\nconst H4Renderer = (props: ComponentProps<'h4'>) => (\n <H4 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst H5Renderer = (props: ComponentProps<'h5'>) => (\n <H5 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst H6Renderer = (props: ComponentProps<'h6'>) => (\n <H6 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst StrongRenderer = (props: ComponentProps<'strong'>) => (\n <strong className=\"text-text\" {...props} />\n);\n\nconst MemoizedCodeBlock = memo(\n ({\n className,\n children,\n isDarkMode,\n lang, // Destructure html lang prop to prevent passing invalid BCP-47 language tag to Code component\n ...rest\n }: ComponentProps<'code'> & { isDarkMode?: boolean }) => {\n const content = String(children ?? '').replace(/\\n$/, '');\n const isBlock = !!className;\n\n if (!isBlock) {\n const decodedContent = content.replace(\n /&(?:amp;)?#(\\d+);/g,\n (_, code: string) => String.fromCharCode(parseInt(code, 10))\n );\n return (\n <code className=\"scale-80 rounded-md border border-neutral/30 bg-card/60 box-decoration-clone px-1.5 py-0.5 font-mono\">\n {decodedContent}\n </code>\n );\n }\n\n const language = (className?.replace(/lang(?:uage)?-/, '') ||\n 'plaintext') as BundledLanguage;\n\n return (\n <Code {...rest} language={language} showHeader isDarkMode={isDarkMode}>\n {content}\n </Code>\n );\n },\n (prevProps, nextProps) =>\n prevProps.children === nextProps.children &&\n prevProps.className === nextProps.className &&\n prevProps.isDarkMode === nextProps.isDarkMode\n);\n\nconst createCodeRenderer = (isDarkMode?: boolean) => {\n return function CodeWrapper(props: ComponentProps<'code'>) {\n return <MemoizedCodeBlock {...props} isDarkMode={isDarkMode} />;\n };\n};\n\nconst BlockquoteRenderer = ({\n className,\n ...props\n}: ComponentProps<'blockquote'>) => (\n <blockquote\n className={cn(\n 'mt-5 gap-3 border-card border-l-4 pl-5 text-neutral [&_strong]:text-neutral',\n className\n )}\n {...props}\n />\n);\n\nconst UlRenderer = ({ className, ...props }: ComponentProps<'ul'>) => (\n <ul\n className={cn(\n 'mt-5 flex list-disc flex-col gap-3 pl-5 marker:text-neutral/80',\n className\n )}\n {...props}\n />\n);\n\nconst OlRenderer = ({ className, ...props }: ComponentProps<'ol'>) => (\n <ol\n className={cn(\n 'mt-5 flex list-decimal flex-col gap-3 pl-5 marker:text-neutral/80',\n className\n )}\n {...props}\n />\n);\n\nconst ImgRenderer = ({\n className,\n alt,\n src,\n ...props\n}: ComponentProps<'img'>) => (\n <img\n {...props}\n alt={alt ?? ''}\n loading=\"lazy\"\n className={cn('max-h-[80vh] max-w-full rounded-md', className)}\n src={\n src?.includes('github.com')\n ? src\n ?.replace('github.com', 'raw.githubusercontent.com')\n .replace('/blob/', '/') // GitHub raw URLs do not use /blob/\n : src\n }\n />\n);\n\nconst createLinkRenderer = (locale?: LocalesValues) => {\n return (props: ComponentProps<'a'>) => (\n <Link\n isExternalLink={props.href?.startsWith('http')}\n underlined\n locale={locale}\n label=\"\"\n color=\"text\"\n {...(props as any)}\n />\n );\n};\n\nconst PreRenderer = (props: ComponentProps<'pre'>) => <>{props.children}</>;\nconst TableRenderer = (props: ComponentProps<typeof SmartTable>) => (\n <SmartTable isRollable displayModal {...props} />\n);\n\nconst TabsRenderer = (props: ComponentProps<typeof Tab>) => (\n <Tab\n {...props}\n className=\"rounded-xl border border-card\"\n headerClassName=\"sticky rounded-xl top-24 z-5 bg-background/70 backdrop-blur overflow-x-auto\"\n />\n);\nconst ColumnsRenderer = ({\n className,\n ...props\n}: ComponentPropsWithoutRef<'div'>) => (\n <div className={cn('flex gap-4 max-md:flex-col', className)} {...props} />\n);\nconst ColumnRenderer = ({\n className,\n ...props\n}: ComponentPropsWithoutRef<'div'>) => (\n <div className={cn('flex-1', className)} {...props} />\n);\n\nconst Iframe = (props: ComponentProps<'iframe'>) => (\n <MarkDownIframe {...props} />\n);\n\n// Static configuration object for static renderers\nconst staticMarkdownComponents = {\n h1: H1Renderer,\n h2: H2Renderer,\n h3: H3Renderer,\n h4: H4Renderer,\n h5: H5Renderer,\n h6: H6Renderer,\n strong: StrongRenderer,\n blockquote: BlockquoteRenderer,\n ul: UlRenderer,\n ol: OlRenderer,\n img: ImgRenderer,\n pre: PreRenderer,\n table: TableRenderer,\n th: Th,\n tr: Tr,\n td: Td,\n hr: Hr,\n Tabs: TabsRenderer,\n Tab: Tab.Item,\n Columns: ColumnsRenderer,\n Column: ColumnRenderer,\n iframe: Iframe,\n};\n\n// Factory function to create components with dynamic props\nconst createMarkdownComponents = (\n isDarkMode?: boolean,\n locale?: LocalesValues\n) => ({\n ...staticMarkdownComponents,\n code: createCodeRenderer(isDarkMode),\n a: createLinkRenderer(locale),\n});\n\n// Export static renderers for backward compatibility\nexport const baseMarkdownComponents = staticMarkdownComponents;\n\ntype MarkdownRendererProps = {\n children: string | ParsedMarkdown;\n isDarkMode?: boolean;\n locale?: LocalesValues;\n forceBlock?: boolean;\n preserveFrontmatter?: boolean;\n tagfilter?: boolean;\n components?: ComponentProps<typeof MarkdownRendererIntlayer>['components'];\n wrapper?: ComponentProps<typeof MarkdownRendererIntlayer>['wrapper'];\n};\n\nexport const getIntlayerMarkdownOptions = (_isDarkMode?: boolean) => ({\n components: baseMarkdownComponents,\n});\n\nexport const MarkdownRenderer: FC<MarkdownRendererProps> = ({\n children,\n isDarkMode = false,\n locale,\n forceBlock,\n preserveFrontmatter,\n tagfilter,\n components: componentsProp,\n wrapper,\n}) => {\n const markdownComponents = createMarkdownComponents(isDarkMode, locale);\n\n const markdownContent = renderMarkdown(children, {\n components: {\n ...markdownComponents,\n ...componentsProp,\n },\n wrapper,\n forceBlock,\n preserveFrontmatter,\n tagfilter,\n });\n\n return (\n <CodeProvider>\n <TabProvider>{markdownContent}</TabProvider>\n </CodeProvider>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;AAuBA,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAuB,GAAI;CAAS;AAEhE,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAkB,GAAI;CAAS;AAE3D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,kBAAkB,UACtB,oBAAC,UAAD;CAAQ,WAAU;CAAY,GAAI;CAAS;AAG7C,MAAM,oBAAoB,MACvB,EACC,WACA,UACA,YACA,MACA,GAAG,WACoD;CACvD,MAAM,UAAU,OAAO,YAAY,GAAG,CAAC,QAAQ,OAAO,GAAG;AAGzD,KAAI,CAAC,CAFY,CAAC,UAOhB,QACE,oBAAC,QAAD;EAAM,WAAU;YALK,QAAQ,QAC7B,uBACC,GAAG,SAAiB,OAAO,aAAa,SAAS,MAAM,GAAG,CAAC,CAI3C;EACV;CAIX,MAAM,WAAY,WAAW,QAAQ,kBAAkB,GAAG,IACxD;AAEF,QACE,oBAAC,MAAD;EAAM,GAAI;EAAgB;EAAU;EAAuB;YACxD;EACI;IAGV,WAAW,cACV,UAAU,aAAa,UAAU,YACjC,UAAU,cAAc,UAAU,aAClC,UAAU,eAAe,UAAU,WACtC;AAED,MAAM,sBAAsB,eAAyB;AACnD,QAAO,SAAS,YAAY,OAA+B;AACzD,SAAO,oBAAC,mBAAD;GAAmB,GAAI;GAAmB;GAAc;;;AAInE,MAAM,sBAAsB,EAC1B,WACA,GAAG,YAEH,oBAAC,cAAD;CACE,WAAW,GACT,+EACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,cAAc,EAAE,WAAW,GAAG,YAClC,oBAAC,MAAD;CACE,WAAW,GACT,kEACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,cAAc,EAAE,WAAW,GAAG,YAClC,oBAAC,MAAD;CACE,WAAW,GACT,qEACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,eAAe,EACnB,WACA,KACA,KACA,GAAG,YAEH,oBAAC,OAAD;CACE,GAAI;CACJ,KAAK,OAAO;CACZ,SAAQ;CACR,WAAW,GAAG,sCAAsC,UAAU;CAC9D,KACE,KAAK,SAAS,aAAa,GACvB,KACI,QAAQ,cAAc,4BAA4B,CACnD,QAAQ,UAAU,IAAI,GACzB;CAEN;AAGJ,MAAM,sBAAsB,WAA2B;AACrD,SAAQ,UACN,oBAAC,MAAD;EACE,gBAAgB,MAAM,MAAM,WAAW,OAAO;EAC9C;EACQ;EACR,OAAM;EACN,OAAM;EACN,GAAK;EACL;;AAIN,MAAM,eAAe,UAAiC,4CAAG,MAAM,UAAY;AAC3E,MAAM,iBAAiB,UACrB,oBAAC,YAAD;CAAY;CAAW;CAAa,GAAI;CAAS;AAGnD,MAAM,gBAAgB,UACpB,oBAAC,KAAD;CACE,GAAI;CACJ,WAAU;CACV,iBAAgB;CAChB;AAEJ,MAAM,mBAAmB,EACvB,WACA,GAAG,YAEH,oBAAC,OAAD;CAAK,WAAW,GAAG,8BAA8B,UAAU;CAAE,GAAI;CAAS;AAE5E,MAAM,kBAAkB,EACtB,WACA,GAAG,YAEH,oBAAC,OAAD;CAAK,WAAW,GAAG,UAAU,UAAU;CAAE,GAAI;CAAS;AAGxD,MAAM,UAAU,UACd,oBAAC,gBAAD,EAAgB,GAAI,OAAS;AAI/B,MAAM,2BAA2B;CAC/B,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,QAAQ;CACR,YAAY;CACZ,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,KAAK;CACL,OAAO;CACP,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACN,KAAK,IAAI;CACT,SAAS;CACT,QAAQ;CACR,QAAQ;CACT;AAGD,MAAM,4BACJ,YACA,YACI;CACJ,GAAG;CACH,MAAM,mBAAmB,WAAW;CACpC,GAAG,mBAAmB,OAAO;CAC9B;AAGD,MAAa,yBAAyB;AAatC,MAAa,8BAA8B,iBAA2B,EACpE,YAAY,wBACb;AAED,MAAa,oBAA+C,EAC1D,UACA,aAAa,OACb,QACA,YACA,qBACA,WACA,YAAY,gBACZ,cACI;AAcJ,QACE,oBAAC,cAAD,YACE,oBAAC,aAAD,YAboB,eAAe,UAAU;EAC/C,YAAY;GACV,GAJuB,yBAAyB,YAAY,OAIvC;GACrB,GAAG;GACJ;EACD;EACA;EACA;EACA;EACD,CAIgC,EAAe,GAC/B"}
1
+ {"version":3,"file":"MarkDownRender.mjs","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"sourcesContent":["import type { LocalesValues } from '@intlayer/types/module_augmentation';\nimport { cn } from '@utils/cn';\nimport type { ComponentProps, ComponentPropsWithoutRef, FC } from 'react';\nimport { memo } from 'react';\nimport {\n type MarkdownRenderer as MarkdownRendererIntlayer,\n type ParsedMarkdown,\n renderMarkdown,\n} from 'react-intlayer/markdown';\nimport type { BundledLanguage } from 'shiki/bundle/web';\nimport { H1, H2, H3, H4, H5, H6 } from '../Headers';\nimport { Code } from '../IDE/Code';\nimport { CodeProvider } from '../IDE/CodeContext';\nimport { Link } from '../Link';\nimport { Tab } from '../Tab';\nimport { TabProvider } from '../Tab/TabContext';\nimport { Hr, SmartTable, Td, Th, Tr } from '../Table';\nimport { MarkDownIframe } from './MarkDownIframe';\n\nexport type { ParsedMarkdown };\n\n// Extracted, stable component renderers\nconst H1Renderer = (props: ComponentProps<'h1'>) => (\n <H1 isClickable className=\"mb-16 mb-8 text-text\" {...props} />\n);\nconst H2Renderer = (props: ComponentProps<'h2'>) => (\n <H2 isClickable className=\"mt-16 text-text\" {...props} />\n);\nconst H3Renderer = (props: ComponentProps<'h3'>) => (\n <H3 isClickable className=\"mt-5 text-text\" {...props} />\n);\nconst H4Renderer = (props: ComponentProps<'h4'>) => (\n <H4 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst H5Renderer = (props: ComponentProps<'h5'>) => (\n <H5 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst H6Renderer = (props: ComponentProps<'h6'>) => (\n <H6 isClickable className=\"mt-3 text-text\" {...props} />\n);\nconst StrongRenderer = (props: ComponentProps<'strong'>) => (\n <strong className=\"text-text\" {...props} />\n);\n\nconst MemoizedCodeBlock = memo(\n ({\n className,\n children,\n isDarkMode,\n lang, // Destructure html lang prop to prevent passing invalid BCP-47 language tag to Code component\n ...rest\n }: ComponentProps<'code'> & { isDarkMode?: boolean }) => {\n const content = String(children ?? '').replace(/\\n$/, '');\n const isBlock = !!className;\n\n if (!isBlock) {\n const decodedContent = content.replace(\n /&(?:amp;)?#(\\d+);/g,\n (_, code: string) => String.fromCharCode(parseInt(code, 10))\n );\n return (\n <code className=\"inline-block scale-80 rounded-lg border border-neutral/30 bg-card/60 box-decoration-clone px-1.5 py-0.5 font-mono\">\n {decodedContent}\n </code>\n );\n }\n\n const language = (className?.replace(/lang(?:uage)?-/, '') ||\n 'plaintext') as BundledLanguage;\n\n return (\n <Code {...rest} language={language} showHeader isDarkMode={isDarkMode}>\n {content}\n </Code>\n );\n },\n (prevProps, nextProps) =>\n prevProps.children === nextProps.children &&\n prevProps.className === nextProps.className &&\n prevProps.isDarkMode === nextProps.isDarkMode\n);\n\nconst createCodeRenderer = (isDarkMode?: boolean) => {\n return function CodeWrapper(props: ComponentProps<'code'>) {\n return <MemoizedCodeBlock {...props} isDarkMode={isDarkMode} />;\n };\n};\n\nconst BlockquoteRenderer = ({\n className,\n ...props\n}: ComponentProps<'blockquote'>) => (\n <blockquote\n className={cn(\n 'mt-5 gap-3 border-card border-l-4 pl-5 text-neutral [&_strong]:text-neutral',\n className\n )}\n {...props}\n />\n);\n\nconst UlRenderer = ({ className, ...props }: ComponentProps<'ul'>) => (\n <ul\n className={cn(\n 'mt-5 flex list-disc flex-col gap-3 pl-5 marker:text-neutral/80',\n className\n )}\n {...props}\n />\n);\n\nconst OlRenderer = ({ className, ...props }: ComponentProps<'ol'>) => (\n <ol\n className={cn(\n 'mt-5 flex list-decimal flex-col gap-3 pl-5 marker:text-neutral/80',\n className\n )}\n {...props}\n />\n);\n\nconst ImgRenderer = ({\n className,\n alt,\n src,\n ...props\n}: ComponentProps<'img'>) => (\n <img\n {...props}\n alt={alt ?? ''}\n loading=\"lazy\"\n className={cn('max-h-[80vh] max-w-full rounded-md', className)}\n src={\n src?.includes('github.com')\n ? src\n ?.replace('github.com', 'raw.githubusercontent.com')\n .replace('/blob/', '/') // GitHub raw URLs do not use /blob/\n : src\n }\n />\n);\n\nconst createLinkRenderer = (locale?: LocalesValues) => {\n return (props: ComponentProps<'a'>) => (\n <Link\n isExternalLink={props.href?.startsWith('http')}\n underlined\n locale={locale}\n label=\"\"\n color=\"text\"\n {...(props as any)}\n />\n );\n};\n\nconst PreRenderer = (props: ComponentProps<'pre'>) => <>{props.children}</>;\nconst TableRenderer = (props: ComponentProps<typeof SmartTable>) => (\n <SmartTable isRollable displayModal {...props} />\n);\n\nconst TabsRenderer = (props: ComponentProps<typeof Tab>) => (\n <Tab\n {...props}\n className=\"rounded-xl border border-card\"\n headerClassName=\"sticky rounded-xl top-24 z-5 bg-background/70 backdrop-blur overflow-x-auto\"\n />\n);\nconst ColumnsRenderer = ({\n className,\n ...props\n}: ComponentPropsWithoutRef<'div'>) => (\n <div className={cn('flex gap-4 max-md:flex-col', className)} {...props} />\n);\nconst ColumnRenderer = ({\n className,\n ...props\n}: ComponentPropsWithoutRef<'div'>) => (\n <div className={cn('flex-1', className)} {...props} />\n);\n\nconst Iframe = (props: ComponentProps<'iframe'>) => (\n <MarkDownIframe {...props} />\n);\n\n// Static configuration object for static renderers\nconst staticMarkdownComponents = {\n h1: H1Renderer,\n h2: H2Renderer,\n h3: H3Renderer,\n h4: H4Renderer,\n h5: H5Renderer,\n h6: H6Renderer,\n strong: StrongRenderer,\n blockquote: BlockquoteRenderer,\n ul: UlRenderer,\n ol: OlRenderer,\n img: ImgRenderer,\n pre: PreRenderer,\n table: TableRenderer,\n th: Th,\n tr: Tr,\n td: Td,\n hr: Hr,\n Tabs: TabsRenderer,\n Tab: Tab.Item,\n Columns: ColumnsRenderer,\n Column: ColumnRenderer,\n iframe: Iframe,\n};\n\n// Factory function to create components with dynamic props\nconst createMarkdownComponents = (\n isDarkMode?: boolean,\n locale?: LocalesValues\n) => ({\n ...staticMarkdownComponents,\n code: createCodeRenderer(isDarkMode),\n a: createLinkRenderer(locale),\n});\n\n// Export static renderers for backward compatibility\nexport const baseMarkdownComponents = staticMarkdownComponents;\n\ntype MarkdownRendererProps = {\n children: string | ParsedMarkdown;\n isDarkMode?: boolean;\n locale?: LocalesValues;\n forceBlock?: boolean;\n preserveFrontmatter?: boolean;\n tagfilter?: boolean;\n components?: ComponentProps<typeof MarkdownRendererIntlayer>['components'];\n wrapper?: ComponentProps<typeof MarkdownRendererIntlayer>['wrapper'];\n};\n\nexport const getIntlayerMarkdownOptions = (_isDarkMode?: boolean) => ({\n components: baseMarkdownComponents,\n});\n\nexport const MarkdownRenderer: FC<MarkdownRendererProps> = ({\n children,\n isDarkMode = false,\n locale,\n forceBlock,\n preserveFrontmatter,\n tagfilter,\n components: componentsProp,\n wrapper,\n}) => {\n const markdownComponents = createMarkdownComponents(isDarkMode, locale);\n\n const markdownContent = renderMarkdown(children, {\n components: {\n ...markdownComponents,\n ...componentsProp,\n },\n wrapper,\n forceBlock,\n preserveFrontmatter,\n tagfilter,\n });\n\n return (\n <CodeProvider>\n <TabProvider>{markdownContent}</TabProvider>\n </CodeProvider>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;AAsBA,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAuB,GAAI;CAAS;AAEhE,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAkB,GAAI;CAAS;AAE3D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,cAAc,UAClB,oBAAC,IAAD;CAAI;CAAY,WAAU;CAAiB,GAAI;CAAS;AAE1D,MAAM,kBAAkB,UACtB,oBAAC,UAAD;CAAQ,WAAU;CAAY,GAAI;CAAS;AAG7C,MAAM,oBAAoB,MACvB,EACC,WACA,UACA,YACA,MACA,GAAG,WACoD;CACvD,MAAM,UAAU,OAAO,YAAY,GAAG,CAAC,QAAQ,OAAO,GAAG;AAGzD,KAAI,CAAC,CAFY,CAAC,UAOhB,QACE,oBAAC,QAAD;EAAM,WAAU;YALK,QAAQ,QAC7B,uBACC,GAAG,SAAiB,OAAO,aAAa,SAAS,MAAM,GAAG,CAAC,CAI3C;EACV;CAIX,MAAM,WAAY,WAAW,QAAQ,kBAAkB,GAAG,IACxD;AAEF,QACE,oBAAC,MAAD;EAAM,GAAI;EAAgB;EAAU;EAAuB;YACxD;EACI;IAGV,WAAW,cACV,UAAU,aAAa,UAAU,YACjC,UAAU,cAAc,UAAU,aAClC,UAAU,eAAe,UAAU,WACtC;AAED,MAAM,sBAAsB,eAAyB;AACnD,QAAO,SAAS,YAAY,OAA+B;AACzD,SAAO,oBAAC,mBAAD;GAAmB,GAAI;GAAmB;GAAc;;;AAInE,MAAM,sBAAsB,EAC1B,WACA,GAAG,YAEH,oBAAC,cAAD;CACE,WAAW,GACT,+EACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,cAAc,EAAE,WAAW,GAAG,YAClC,oBAAC,MAAD;CACE,WAAW,GACT,kEACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,cAAc,EAAE,WAAW,GAAG,YAClC,oBAAC,MAAD;CACE,WAAW,GACT,qEACA,UACD;CACD,GAAI;CACJ;AAGJ,MAAM,eAAe,EACnB,WACA,KACA,KACA,GAAG,YAEH,oBAAC,OAAD;CACE,GAAI;CACJ,KAAK,OAAO;CACZ,SAAQ;CACR,WAAW,GAAG,sCAAsC,UAAU;CAC9D,KACE,KAAK,SAAS,aAAa,GACvB,KACI,QAAQ,cAAc,4BAA4B,CACnD,QAAQ,UAAU,IAAI,GACzB;CAEN;AAGJ,MAAM,sBAAsB,WAA2B;AACrD,SAAQ,UACN,oBAAC,MAAD;EACE,gBAAgB,MAAM,MAAM,WAAW,OAAO;EAC9C;EACQ;EACR,OAAM;EACN,OAAM;EACN,GAAK;EACL;;AAIN,MAAM,eAAe,UAAiC,4CAAG,MAAM,UAAY;AAC3E,MAAM,iBAAiB,UACrB,oBAAC,YAAD;CAAY;CAAW;CAAa,GAAI;CAAS;AAGnD,MAAM,gBAAgB,UACpB,oBAAC,KAAD;CACE,GAAI;CACJ,WAAU;CACV,iBAAgB;CAChB;AAEJ,MAAM,mBAAmB,EACvB,WACA,GAAG,YAEH,oBAAC,OAAD;CAAK,WAAW,GAAG,8BAA8B,UAAU;CAAE,GAAI;CAAS;AAE5E,MAAM,kBAAkB,EACtB,WACA,GAAG,YAEH,oBAAC,OAAD;CAAK,WAAW,GAAG,UAAU,UAAU;CAAE,GAAI;CAAS;AAGxD,MAAM,UAAU,UACd,oBAAC,gBAAD,EAAgB,GAAI,OAAS;AAI/B,MAAM,2BAA2B;CAC/B,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,QAAQ;CACR,YAAY;CACZ,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,KAAK;CACL,OAAO;CACP,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACN,KAAK,IAAI;CACT,SAAS;CACT,QAAQ;CACR,QAAQ;CACT;AAGD,MAAM,4BACJ,YACA,YACI;CACJ,GAAG;CACH,MAAM,mBAAmB,WAAW;CACpC,GAAG,mBAAmB,OAAO;CAC9B;AAGD,MAAa,yBAAyB;AAatC,MAAa,8BAA8B,iBAA2B,EACpE,YAAY,wBACb;AAED,MAAa,oBAA+C,EAC1D,UACA,aAAa,OACb,QACA,YACA,qBACA,WACA,YAAY,gBACZ,cACI;AAcJ,QACE,oBAAC,cAAD,YACE,oBAAC,aAAD,YAboB,eAAe,UAAU;EAC/C,YAAY;GACV,GAJuB,yBAAyB,YAAY,OAIvC;GACrB,GAAG;GACJ;EACD;EACA;EACA;EACA;EACD,CAIgC,EAAe,GAC/B"}
@@ -1,12 +1,12 @@
1
1
  'use client';
2
2
 
3
+ import { toast } from "../../Toaster/useToast.mjs";
3
4
  import { Loader } from "../../Loader/index.mjs";
4
5
  import { Button } from "../../Button/Button.mjs";
5
6
  import { Command, CommandRoot } from "../../Command/index.mjs";
6
7
  import { MarkdownRenderer as MarkdownRenderer$1 } from "../../MarkDownRender/MarkDownRender.mjs";
7
8
  import { useEditor } from "../novel/components/index.mjs";
8
9
  import { addAIHighlight } from "../novel/extensions/ai-highlight.mjs";
9
- import { toast } from "../../Toaster/useToast.mjs";
10
10
  import { AICompletionCommands } from "./AICompletionCommands.mjs";
11
11
  import { AISelectorCommands } from "./AISelectorCommands.mjs";
12
12
  import { useAICompletion } from "./useAICompletion.mjs";
@@ -1,14 +1,14 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../utils/cn.mjs";
4
- import { useGetElementOrWindow } from "../../hooks/useGetElementOrWindow.mjs";
5
- import { useScrollBlockage } from "../../hooks/useScrollBlockage/index.mjs";
6
4
  import { Button } from "../Button/Button.mjs";
7
5
  import { Container } from "../Container/index.mjs";
6
+ import { useGetElementOrWindow } from "../../hooks/useGetElementOrWindow.mjs";
7
+ import { useScrollBlockage } from "../../hooks/useScrollBlockage/index.mjs";
8
8
  import { H3 } from "../Headers/index.mjs";
9
9
  import { useEffect } from "react";
10
- import { X } from "lucide-react";
11
10
  import { cva } from "class-variance-authority";
11
+ import { X } from "lucide-react";
12
12
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
13
13
  import { motion } from "framer-motion";
14
14
  import { createPortal } from "react-dom";
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../utils/cn.mjs";
4
+ import { MaxHeightSmoother } from "../MaxHeightSmoother/index.mjs";
4
5
  import { useScrollBlockage } from "../../hooks/useScrollBlockage/index.mjs";
5
6
  import { useScrollDetection } from "../../hooks/useScrollDetection.mjs";
6
- import { MaxHeightSmoother } from "../MaxHeightSmoother/index.mjs";
7
7
  import { Burger } from "./Burger.mjs";
8
8
  import { useRef, useState } from "react";
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../utils/cn.mjs";
4
- import { useItemSelector } from "../../hooks/useItemSelector.mjs";
5
4
  import { Button } from "../Button/Button.mjs";
5
+ import { useItemSelector } from "../../hooks/useItemSelector.mjs";
6
6
  import { useEffect, useRef } from "react";
7
- import { ChevronLeft, ChevronRight, MoreHorizontal } from "lucide-react";
8
7
  import { cva } from "class-variance-authority";
8
+ import { ChevronLeft, ChevronRight, MoreHorizontal } from "lucide-react";
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
10
10
  import { useIntlayer } from "react-intlayer";
11
11
 
@@ -1,12 +1,12 @@
1
1
  'use client';
2
2
 
3
- import { useGetElementOrWindow } from "../../hooks/useGetElementOrWindow.mjs";
4
- import { useDevice } from "../../hooks/useDevice.mjs";
5
- import { useScrollBlockage } from "../../hooks/useScrollBlockage/index.mjs";
6
3
  import { Button } from "../Button/Button.mjs";
7
4
  import { Container } from "../Container/index.mjs";
5
+ import { useDevice } from "../../hooks/useDevice.mjs";
8
6
  import { KeyboardShortcut } from "../KeyboardShortcut/KeyboardShortcut.mjs";
9
7
  import { Popover } from "../Popover/dynamic.mjs";
8
+ import { useGetElementOrWindow } from "../../hooks/useGetElementOrWindow.mjs";
9
+ import { useScrollBlockage } from "../../hooks/useScrollBlockage/index.mjs";
10
10
  import { MaxWidthSmoother } from "../MaxWidthSmoother/index.mjs";
11
11
  import { isElementAtTopAndNotCovered } from "./isElementAtTopAndNotCovered.mjs";
12
12
  import { useRightDrawer } from "./useRightDrawer.mjs";
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../utils/cn.mjs";
4
- import { useHorizontalSwipe } from "../../hooks/useHorizontalSwipe.mjs";
5
4
  import { TabSelector } from "../TabSelector/TabSelector.mjs";
5
+ import { useHorizontalSwipe } from "../../hooks/useHorizontalSwipe.mjs";
6
6
  import { useTabContext } from "./TabContext.mjs";
7
7
  import { Children, createContext, isValidElement, useState } from "react";
8
8
  import { cva } from "class-variance-authority";
@@ -1,10 +1,10 @@
1
1
  'use client';
2
2
 
3
3
  import { cn } from "../../utils/cn.mjs";
4
- import { X } from "lucide-react";
4
+ import * as ToastPrimitives from "@radix-ui/react-toast";
5
5
  import { cva } from "class-variance-authority";
6
+ import { X } from "lucide-react";
6
7
  import { jsx } from "react/jsx-runtime";
7
- import * as ToastPrimitives from "@radix-ui/react-toast";
8
8
 
9
9
  //#region src/components/Toaster/Toast.tsx
10
10
  const ToastProvider = ToastPrimitives;
@@ -1,3 +1,6 @@
1
+ import { Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, toastVariants } from "./Toaster/Toast.mjs";
2
+ import { reducer, toast, useToast } from "./Toaster/useToast.mjs";
3
+ import { Toaster } from "./Toaster/Toaster.mjs";
1
4
  import { Loader } from "./Loader/index.mjs";
2
5
  import { Button, buttonVariants } from "./Button/Button.mjs";
3
6
  import { MaxHeightSmoother } from "./MaxHeightSmoother/index.mjs";
@@ -118,9 +121,6 @@ import { SmartTable } from "./Table/SmartTable.mjs";
118
121
  import { Hr, Td, Th, Tr } from "./Table/TableElements.mjs";
119
122
  import { MarkdownRenderer, baseMarkdownComponents, getIntlayerMarkdownOptions } from "./MarkDownRender/MarkDownRender.mjs";
120
123
  import { createEditorUploadFn } from "./MarkdownEditor/imageUpload.mjs";
121
- import { Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, toastVariants } from "./Toaster/Toast.mjs";
122
- import { reducer, toast, useToast } from "./Toaster/useToast.mjs";
123
- import { Toaster } from "./Toaster/Toaster.mjs";
124
124
  import { MarkdownEditor } from "./MarkdownEditor/MarkdownEditor.mjs";
125
125
  import { MaxWidthSmoother } from "./MaxWidthSmoother/index.mjs";
126
126
  import { DesktopNavbar } from "./Navbar/DesktopNavbar.mjs";
@@ -1,16 +1,16 @@
1
- import { useKeyboardDetector } from "./useKeyboardDetector.mjs";
2
- import { useGetElementOrWindow } from "./useGetElementOrWindow.mjs";
3
- import { useScrollY } from "./useScrollY.mjs";
4
- import { usePersistedStore } from "./usePersistedStore.mjs";
5
- import { useHorizontalSwipe } from "./useHorizontalSwipe.mjs";
6
- import { useItemSelector } from "./useItemSelector.mjs";
7
1
  import { calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useDevice } from "./useDevice.mjs";
8
- import { useSearch } from "./useSearch.mjs";
9
- import { useIsMounted } from "./useIsMounted.mjs";
2
+ import { useItemSelector } from "./useItemSelector.mjs";
3
+ import { usePersistedStore } from "./usePersistedStore.mjs";
10
4
  import { useGetElementById } from "./useGetElementById.mjs";
5
+ import { useGetElementOrWindow } from "./useGetElementOrWindow.mjs";
6
+ import { useHorizontalSwipe } from "./useHorizontalSwipe.mjs";
11
7
  import { useIsDarkMode } from "./useIsDarkMode.mjs";
8
+ import { useIsMounted } from "./useIsMounted.mjs";
9
+ import { useKeyboardDetector } from "./useKeyboardDetector.mjs";
12
10
  import { useScreenWidth } from "./useScreenWidth.mjs";
13
11
  import { useScrollBlockage } from "./useScrollBlockage/index.mjs";
14
12
  import { useScrollDetection } from "./useScrollDetection.mjs";
13
+ import { useScrollY } from "./useScrollY.mjs";
14
+ import { useSearch } from "./useSearch.mjs";
15
15
 
16
16
  export { calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useDevice, useGetElementById, useGetElementOrWindow, useHorizontalSwipe, useIsDarkMode, useIsMounted, useItemSelector, useKeyboardDetector, usePersistedStore, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch };
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
 
3
3
  import { useToast } from "../components/Toaster/useToast.mjs";
4
+ import { createAsyncStoragePersister } from "@tanstack/query-async-storage-persister";
4
5
  import { MutationCache, QueryClient, QueryClientProvider, timeoutManager } from "@tanstack/react-query";
6
+ import { PersistQueryClientProvider } from "@tanstack/react-query-persist-client";
5
7
  import { useRef } from "react";
6
8
  import { jsx } from "react/jsx-runtime";
7
- import { createAsyncStoragePersister } from "@tanstack/query-async-storage-persister";
8
- import { PersistQueryClientProvider } from "@tanstack/react-query-persist-client";
9
9
 
10
10
  //#region src/providers/ReactQueryProvider.tsx
11
11
  const PERSIST_MAX_AGE = 1e3 * 60 * 60 * 24;
@@ -1,9 +1,3 @@
1
- import { clsx } from "clsx";
2
- import { twMerge } from "tailwind-merge";
1
+ import { cn } from "cnfast";
3
2
 
4
- //#region src/utils/cn.ts
5
- const cn = (...inputs) => twMerge(clsx(inputs));
6
-
7
- //#endregion
8
- export { cn };
9
- //# sourceMappingURL=cn.mjs.map
3
+ export { cn };
@@ -23,8 +23,8 @@ type BadgeSize = 'sm' | 'md' | 'lg';
23
23
  * @description Defines the styling variants for different badge combinations
24
24
  */
25
25
  declare const badgeVariants: (props?: {
26
- color?: "error" | "custom" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text" | "success";
27
- variant?: "none" | "default" | "outline" | "hoverable";
26
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "custom" | "light" | "dark";
27
+ variant?: "default" | "none" | "outline" | "hoverable";
28
28
  size?: "sm" | "md" | "lg";
29
29
  } & _$class_variance_authority_types0.ClassProp) => string;
30
30
  /**
@@ -25,9 +25,9 @@ type ButtonTextAlign = 'left' | 'center' | 'right';
25
25
  */
26
26
  declare const buttonVariants: (props?: {
27
27
  size?: "xs" | "sm" | "md" | "lg" | "xl" | "icon-sm" | "icon-md" | "icon-lg" | "icon-xl" | "custom";
28
- color?: "error" | "custom" | "primary" | "secondary" | "neutral" | "card" | "light" | "dark" | "text" | "current" | "text-inverse" | "success";
28
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "custom" | "card" | "light" | "dark" | "current" | "text-inverse";
29
29
  roundedSize?: "sm" | "md" | "lg" | "xl" | "2xl" | "none" | "3xl" | "4xl" | "5xl" | "full";
30
- variant?: "none" | "default" | "outline" | "link" | "invisible-link" | "hoverable" | "fade" | "input";
30
+ variant?: "default" | "none" | "outline" | "link" | "invisible-link" | "hoverable" | "fade" | "input";
31
31
  textAlign?: "left" | "center" | "right";
32
32
  isFullWidth?: boolean;
33
33
  } & _$class_variance_authority_types0.ClassProp) => string;
@@ -5,7 +5,7 @@ import { VariantProps } from "class-variance-authority";
5
5
  //#region src/components/CollapsibleTable/CollapsibleTable.d.ts
6
6
  declare const collapsibleTableVariants: (props?: {
7
7
  size?: "sm" | "md" | "lg" | "xl" | "full";
8
- variant?: "dark" | "default" | "ghost" | "outlined";
8
+ variant?: "default" | "ghost" | "dark" | "outlined";
9
9
  spacing?: "sm" | "md" | "lg" | "none" | "auto";
10
10
  } & _$class_variance_authority_types0.ClassProp) => string;
11
11
  interface CollapsibleTableProps extends Omit<HTMLAttributes<HTMLElement>, 'title'>, VariantProps<typeof collapsibleTableVariants> {
@@ -28,7 +28,7 @@ declare const Command: {
28
28
  ref?: React.Ref<HTMLInputElement>;
29
29
  } & {
30
30
  asChild?: boolean;
31
- }, "key" | keyof _$react.InputHTMLAttributes<HTMLInputElement> | "asChild">, "type" | "value" | "onChange"> & {
31
+ }, "key" | keyof _$react.InputHTMLAttributes<HTMLInputElement> | "asChild">, "onChange" | "type" | "value"> & {
32
32
  value?: string;
33
33
  onValueChange?: (search: string) => void;
34
34
  } & _$react.RefAttributes<HTMLInputElement>>;
@@ -72,7 +72,7 @@ declare const Command: {
72
72
  ref?: React.Ref<HTMLDivElement>;
73
73
  } & {
74
74
  asChild?: boolean;
75
- }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild">, "value" | "onSelect" | "disabled"> & {
75
+ }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild">, "onSelect" | "disabled" | "value"> & {
76
76
  disabled?: boolean;
77
77
  onSelect?: (value: string) => void;
78
78
  value?: string;
@@ -11,9 +11,9 @@ declare const containerVariants: (props?: {
11
11
  roundedSize?: "sm" | "md" | "lg" | "xl" | "2xl" | "none" | "3xl" | "4xl" | "full";
12
12
  transparency?: "xs" | "sm" | "md" | "lg" | "xl" | "none" | "full";
13
13
  padding?: "sm" | "md" | "lg" | "xl" | "2xl" | "none";
14
- separator?: "both" | "without" | "x" | "y";
14
+ separator?: "without" | "x" | "y" | "both";
15
15
  border?: "with" | "none";
16
- borderColor?: "error" | "primary" | "secondary" | "neutral" | "card" | "text" | "success" | "warning";
16
+ borderColor?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "card" | "warning";
17
17
  background?: "with" | "none" | "hoverable";
18
18
  gap?: "sm" | "md" | "lg" | "xl" | "2xl" | "none";
19
19
  } & _$class_variance_authority_types0.ClassProp) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownWrapper.d.ts","names":[],"sources":["../../../../../src/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.tsx"],"mappings":";;;;;;KAQK,oBAAA,GAAuB,IAAA,CAAK,gBAAA;EAC/B,OAAA,EAAS,eAAA,CAAgB,WAAA;AAAA;AAAA,cAGd,eAAA,EAAiB,EAAA,CAAG,oBAAA"}
1
+ {"version":3,"file":"MarkdownWrapper.d.ts","names":[],"sources":["../../../../../src/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.tsx"],"mappings":";;;;;;KAOK,oBAAA,GAAuB,IAAA,CAAK,gBAAA;EAC/B,OAAA,EAAS,eAAA,CAAgB,WAAA;AAAA;AAAA,cAGd,eAAA,EAAiB,EAAA,CAAG,oBAAA"}
@@ -7,8 +7,8 @@ declare const useDictionarySchema: (projectId: string) => z.ZodObject<{
7
7
  key: z.ZodDefault<z.ZodString>;
8
8
  projectIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
9
9
  qualifierType: z.ZodDefault<z.ZodEnum<{
10
- none: "none";
11
10
  variant: "variant";
11
+ none: "none";
12
12
  meta: "meta";
13
13
  item: "item";
14
14
  }>>;
@@ -6,8 +6,8 @@ import { VariantProps } from "class-variance-authority";
6
6
  declare const checkboxVariants: (props?: {
7
7
  variant?: "default";
8
8
  size?: "xs" | "sm" | "md" | "lg";
9
- color?: "error" | "custom" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text" | "text-inverse" | "success";
10
- validationStyleEnabled?: "enabled" | "disabled";
9
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "custom" | "light" | "dark" | "text-inverse";
10
+ validationStyleEnabled?: "disabled" | "enabled";
11
11
  } & _$class_variance_authority_types0.ClassProp) => string;
12
12
  type CheckboxSize = 'xs' | 'sm' | 'md' | 'lg';
13
13
  type CheckboxColor = 'primary' | 'secondary' | 'neutral' | 'light' | 'text' | 'text-inverse' | 'dark' | 'error' | 'success' | 'custom';
@@ -6,7 +6,7 @@ import { VariantProps } from "class-variance-authority";
6
6
  declare const inputVariants: (props?: {
7
7
  variant?: "default" | "invisible";
8
8
  size?: "sm" | "md" | "lg";
9
- validationStyleEnabled?: "enabled" | "disabled";
9
+ validationStyleEnabled?: "disabled" | "enabled";
10
10
  } & _$class_variance_authority_types0.ClassProp) => string;
11
11
  type InputVariant = 'default' | 'invisible';
12
12
  type InputSize = 'md' | 'lg';
@@ -6,8 +6,8 @@ import { VariantProps } from "class-variance-authority";
6
6
  declare const radioVariants: (props?: {
7
7
  variant?: "default";
8
8
  size?: "xs" | "sm" | "md" | "lg";
9
- color?: "error" | "custom" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text" | "text-inverse" | "success";
10
- validationStyleEnabled?: "enabled" | "disabled";
9
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "custom" | "light" | "dark" | "text-inverse";
10
+ validationStyleEnabled?: "disabled" | "enabled";
11
11
  } & _$class_variance_authority_types0.ClassProp) => string;
12
12
  type RadioSize = 'xs' | 'sm' | 'md' | 'lg';
13
13
  type RadioColor = 'primary' | 'secondary' | 'neutral' | 'light' | 'text' | 'text-inverse' | 'dark' | 'error' | 'success' | 'custom';
@@ -15,7 +15,7 @@ type LinkUnderlined = 'default' | 'true' | 'false';
15
15
  declare const linkVariants: (props?: {
16
16
  variant?: "default" | "invisible-link" | "hoverable" | "button" | "button-outlined";
17
17
  roundedSize?: "sm" | "md" | "lg" | "xl" | "2xl" | "none" | "3xl" | "full";
18
- color?: "error" | "custom" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text" | "text-inverse" | "success";
18
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "success" | "custom" | "light" | "dark" | "text-inverse";
19
19
  size?: "sm" | "md" | "lg" | "xl" | "custom";
20
20
  underlined?: boolean | "default";
21
21
  } & _$class_variance_authority_types0.ClassProp) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"mappings":";;;;;;;;cA8Na,sBAAA;cAvMc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;kBAGhB,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAmDpD,cAAA,mBAA4B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAUc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAUpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;KAe9D,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;eA6BI,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;iBACnB,cAAA,QAAsB,UAAA,MAAW,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;;;;;;;gBAIlC,cAAA,QAAsB,GAAA,MAAI,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;KAUpD,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAM/B,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;kBAIX,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,KA2C1C,qBAAA;EACH,QAAA,WAAmB,cAAA;EACnB,UAAA;EACA,MAAA,GAAS,aAAA;EACT,UAAA;EACA,mBAAA;EACA,SAAA;EACA,UAAA,GAAa,cAAA,QAAsB,kBAAA;EACnC,OAAA,GAAU,cAAA,QAAsB,kBAAA;AAAA;AAAA,cAGrB,0BAAA,GAA8B,WAAA;;gBApNhB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;oBAGhB,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAmDpD,cAAA,mBAA4B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAUc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAUpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;OAe9D,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;iBA6BI,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;mBACnB,cAAA,QAAsB,UAAA,MAAW,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;;;;;;;kBAIlC,cAAA,QAAsB,GAAA,MAAI,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;OAUpD,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAM/B,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;oBAIX,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;EAAA;AAAA;AAAA,cA0DlC,gBAAA,EAAkB,EAAA,CAAG,qBAAA"}
1
+ {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"mappings":";;;;;;;;cA6Na,sBAAA;cAvMc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;cAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;kBAGhB,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAmDpD,cAAA,mBAA4B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAUc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAUpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;KAe9D,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;eA6BI,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;iBACnB,cAAA,QAAsB,UAAA,MAAW,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;;;;;;;gBAIlC,cAAA,QAAsB,GAAA,MAAI,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;KAUpD,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;KAM/B,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;kBAIX,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,KA2C1C,qBAAA;EACH,QAAA,WAAmB,cAAA;EACnB,UAAA;EACA,MAAA,GAAS,aAAA;EACT,UAAA;EACA,mBAAA;EACA,SAAA;EACA,UAAA,GAAa,cAAA,QAAsB,kBAAA;EACnC,OAAA,GAAU,cAAA,QAAsB,kBAAA;AAAA;AAAA,cAGrB,0BAAA,GAA8B,WAAA;;gBApNhB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;gBAGpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;oBAGhB,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAmDpD,cAAA,mBAA4B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAUc,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAUpB,cAAA,WAAoB,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;OAe9D,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;iBA6BI,cAAA,YAAqB,OAAA,CAAA,GAAA,CAAA,OAAA;mBACnB,cAAA,QAAsB,UAAA,MAAW,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;;;;;;;kBAIlC,cAAA,QAAsB,GAAA,MAAI,OAAA,CAAA,GAAA,CAAA,OAAA;;;;;;;;;;;OAUpD,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;;;;OAM/B,wBAAA,YAA+B,OAAA,CAAA,GAAA,CAAA,OAAA;oBAIX,cAAA,eAAwB,OAAA,CAAA,GAAA,CAAA,OAAA;EAAA;AAAA;AAAA,cA0DlC,gBAAA,EAAkB,EAAA,CAAG,qBAAA"}
@@ -5,7 +5,7 @@ import { VariantProps } from "class-variance-authority";
5
5
  //#region src/components/Pagination/Pagination.d.ts
6
6
  declare const paginationVariants: (props?: {
7
7
  size?: "sm" | "md" | "lg";
8
- color?: "primary" | "secondary" | "neutral" | "text";
8
+ color?: "text" | "primary" | "secondary" | "neutral";
9
9
  variant?: "default" | "bordered" | "ghost";
10
10
  } & _$class_variance_authority_types0.ClassProp) => string;
11
11
  type PaginationSize = 'sm' | 'md' | 'lg';
@@ -25,14 +25,14 @@ type SwitchSelectorBaseProps<T = boolean> = {
25
25
  };
26
26
  type SwitchSelectorProps<T = boolean> = SwitchSelectorBaseProps<T> & VariantProps<typeof switchSelectorVariant> & VariantProps<typeof choiceVariant>;
27
27
  declare const switchSelectorVariant: (props?: {
28
- color?: "primary" | "secondary" | "neutral" | "light" | "dark" | "text";
28
+ color?: "text" | "primary" | "secondary" | "neutral" | "light" | "dark";
29
29
  disabled?: boolean;
30
30
  } & _$class_variance_authority_types0.ClassProp) => string;
31
31
  declare const choiceVariant: (props?: {
32
32
  size?: "xs" | "sm" | "md" | "lg";
33
33
  } & _$class_variance_authority_types0.ClassProp) => string;
34
34
  declare const indicatorVariant: (props?: {
35
- color?: "error" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text";
35
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "light" | "dark";
36
36
  } & _$class_variance_authority_types0.ClassProp) => string;
37
37
  /**
38
38
  * Component that allows the user to select one of the provided choices.
@@ -5,7 +5,7 @@ import { VariantProps } from "class-variance-authority";
5
5
 
6
6
  //#region src/components/SwitchSelector/VerticalSwitchSelector.d.ts
7
7
  declare const verticalSwitchSelectorVariant: (props?: {
8
- color?: "primary" | "secondary" | "neutral" | "light" | "dark" | "text" | "error";
8
+ color?: "text" | "primary" | "secondary" | "neutral" | "light" | "dark" | "error";
9
9
  disabled?: boolean;
10
10
  } & _$class_variance_authority_types0.ClassProp) => string;
11
11
  declare const verticalChoiceVariant: (props?: {
@@ -7,7 +7,7 @@ import { ItemSelectorOrientation } from "@hooks/useItemSelector";
7
7
  //#region src/components/TabSelector/TabSelector.d.ts
8
8
  type TabSelectorColor = 'primary' | 'secondary' | 'error' | 'neutral' | 'light' | 'dark' | 'text';
9
9
  declare const tabSelectorVariant: (props?: {
10
- color?: "error" | "primary" | "secondary" | "neutral" | "light" | "dark" | "text";
10
+ color?: "error" | "text" | "primary" | "secondary" | "neutral" | "light" | "dark";
11
11
  } & _$class_variance_authority_types0.ClassProp) => string;
12
12
  type TabSelectorItemProps = HTMLAttributes<HTMLElement> & {
13
13
  key: string | number;
@@ -147,7 +147,7 @@ type TagBorder = 'none' | 'with';
147
147
  type TagBackground = 'none' | 'with';
148
148
  declare const containerVariants: (props?: {
149
149
  roundedSize?: "sm" | "md" | "lg" | "xl" | "none" | "full" | "xxl" | "xxxl";
150
- color?: "error" | "primary" | "neutral" | "text" | "success" | "warning" | "black" | "white";
150
+ color?: "error" | "text" | "primary" | "neutral" | "success" | "warning" | "black" | "white";
151
151
  size?: "xs" | "sm" | "md" | "lg" | "xl";
152
152
  border?: "with" | "none";
153
153
  background?: "with" | "none";
@@ -25,7 +25,7 @@ declare const ToastViewport: FC<ComponentProps<typeof ToastPrimitives.Viewport>>
25
25
  * ```
26
26
  */
27
27
  declare const toastVariants: (props?: {
28
- variant?: "error" | "success" | "default";
28
+ variant?: "error" | "default" | "success";
29
29
  } & _$class_variance_authority_types0.ClassProp) => string;
30
30
  /**
31
31
  * Toast Component
@@ -1,7 +1,2 @@
1
- import { ClassValue } from "clsx";
2
-
3
- //#region src/utils/cn.d.ts
4
- declare const cn: (...inputs: ClassValue[]) => string;
5
- //#endregion
6
- export { cn };
7
- //# sourceMappingURL=cn.d.ts.map
1
+ import { cn } from "cnfast";
2
+ export { cn };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intlayer/design-system",
3
- "version": "9.0.0-canary.3",
3
+ "version": "9.0.0-canary.4",
4
4
  "private": false,
5
5
  "description": "Intlayer design system, including UI components used in the Intlayer editor, website, and visual editor/CMS.",
6
6
  "keywords": [
@@ -440,15 +440,15 @@
440
440
  "typecheck_": "tsc --noEmit --project tsconfig.types.json"
441
441
  },
442
442
  "dependencies": {
443
- "@better-auth/passkey": "1.6.19",
444
- "@better-auth/sso": "1.6.19",
445
- "@intlayer/api": "9.0.0-canary.3",
446
- "@intlayer/chokidar": "9.0.0-canary.3",
447
- "@intlayer/config": "9.0.0-canary.3",
448
- "@intlayer/core": "9.0.0-canary.3",
449
- "@intlayer/dictionaries-entry": "9.0.0-canary.3",
450
- "@intlayer/editor-react": "9.0.0-canary.3",
451
- "@intlayer/types": "9.0.0-canary.3",
443
+ "@better-auth/passkey": "1.6.20",
444
+ "@better-auth/sso": "1.6.20",
445
+ "@intlayer/api": "9.0.0-canary.4",
446
+ "@intlayer/chokidar": "9.0.0-canary.4",
447
+ "@intlayer/config": "9.0.0-canary.4",
448
+ "@intlayer/core": "9.0.0-canary.4",
449
+ "@intlayer/dictionaries-entry": "9.0.0-canary.4",
450
+ "@intlayer/editor-react": "9.0.0-canary.4",
451
+ "@intlayer/types": "9.0.0-canary.4",
452
452
  "@radix-ui/react-dialog": "1.1.17",
453
453
  "@radix-ui/react-select": "2.3.1",
454
454
  "@radix-ui/react-slot": "1.3.0",
@@ -474,13 +474,14 @@
474
474
  "@tiptap/react": "3.26.1",
475
475
  "@tiptap/starter-kit": "3.26.1",
476
476
  "@tiptap/suggestion": "3.26.1",
477
- "better-auth": "1.6.19",
477
+ "better-auth": "1.6.20",
478
478
  "class-variance-authority": "0.7.1",
479
479
  "cmdk": "1.1.1",
480
+ "cnfast": "^0.0.8",
480
481
  "defu": "6.1.7",
481
482
  "dompurify": "3.4.10",
482
483
  "isomorphic-dompurify": "3.17.0",
483
- "react-intlayer": "9.0.0-canary.3",
484
+ "react-intlayer": "9.0.0-canary.4",
484
485
  "react-moveable": "^0.56.0",
485
486
  "rollup-preserve-directives": "1.1.3",
486
487
  "tippy.js": "^6.3.7",
@@ -491,7 +492,7 @@
491
492
  "zod": "4.4.3"
492
493
  },
493
494
  "devDependencies": {
494
- "@intlayer/backend": "9.0.0-canary.3",
495
+ "@intlayer/backend": "9.0.0-canary.4",
495
496
  "@shikijs/transformers": "4.2.0",
496
497
  "@storybook/addon-a11y": "8.6.14",
497
498
  "@storybook/addon-essentials": "8.6.14",
@@ -515,41 +516,39 @@
515
516
  "@testing-library/user-event": "14.6.1",
516
517
  "@types/dompurify": "3.2.0",
517
518
  "@types/espree": "11.1.0",
518
- "@types/node": "25.9.3",
519
+ "@types/node": "25.9.4",
519
520
  "@types/react": "19.2.17",
520
521
  "@types/react-dom": "19.2.3",
521
522
  "@utils/ts-config": "1.0.4",
522
523
  "@utils/ts-config-types": "1.0.4",
523
- "clsx": "2.1.1",
524
524
  "fast-glob": "3.3.3",
525
- "intlayer": "9.0.0-canary.3",
525
+ "intlayer": "9.0.0-canary.4",
526
526
  "rimraf": "6.1.3",
527
527
  "shiki": "4.2.0",
528
528
  "storybook": "8.6.17",
529
- "tailwind-merge": "3.6.0",
530
529
  "tsdown": "0.21.10",
531
530
  "typescript": "6.0.3",
532
- "vite": "8.0.16",
533
- "vite-intlayer": "9.0.0-canary.3",
531
+ "vite": "8.1.0",
532
+ "vite-intlayer": "9.0.0-canary.4",
534
533
  "vite-plugin-dts": "5.0.2",
535
534
  "vitest": "4.1.9"
536
535
  },
537
536
  "peerDependencies": {
538
537
  "@better-fetch/fetch": "1.3.1",
539
538
  "@hookform/resolvers": "5.4.0",
540
- "@intlayer/backend": "9.0.0-canary.3",
539
+ "@intlayer/backend": "9.0.0-canary.4",
541
540
  "@monaco-editor/react": "4.7.0",
542
541
  "@shikijs/transformers": "4.2.0",
543
- "@tanstack/react-query": "5.101.0",
544
- "@tanstack/react-query-devtools": "5.101.0",
545
- "framer-motion": "12.40.0",
542
+ "@tanstack/react-query": "5.101.1",
543
+ "@tanstack/react-query-devtools": "5.101.1",
544
+ "framer-motion": "12.41.0",
546
545
  "fuse.js": "7.4.2",
547
- "intlayer": "9.0.0-canary.3",
548
- "lucide-react": "1.20.0",
546
+ "intlayer": "9.0.0-canary.4",
547
+ "lucide-react": "1.21.0",
549
548
  "react": ">=16.0.0",
550
549
  "react-dom": ">=16.0.0",
551
550
  "react-hook-form": "7.79.0",
552
- "react-intlayer": "9.0.0-canary.3",
551
+ "react-intlayer": "9.0.0-canary.4",
553
552
  "shiki": "4.2.0",
554
553
  "tailwindcss": "4.3.1"
555
554
  },
@@ -1 +0,0 @@
1
- {"version":3,"file":"cn.mjs","names":[],"sources":["../../../src/utils/cn.ts"],"sourcesContent":["import { type ClassValue, clsx } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport const cn = (...inputs: ClassValue[]) => twMerge(clsx(inputs));\n"],"mappings":";;;;AAGA,MAAa,MAAM,GAAG,WAAyB,QAAQ,KAAK,OAAO,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cn.d.ts","names":[],"sources":["../../../src/utils/cn.ts"],"mappings":";;;cAGa,EAAA,MAAS,MAAA,EAAQ,UAAA"}