@intlayer/design-system 5.4.1 → 5.5.0-canary.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/.vite/manifest.json +66 -98
- package/dist/components/DictionaryEditor/DictionaryEditor.cjs +14 -2
- package/dist/components/DictionaryEditor/DictionaryEditor.cjs.map +1 -1
- package/dist/components/DictionaryEditor/DictionaryEditor.d.ts +1 -0
- package/dist/components/DictionaryEditor/DictionaryEditor.d.ts.map +1 -1
- package/dist/components/DictionaryEditor/DictionaryEditor.mjs +14 -2
- package/dist/components/DictionaryEditor/DictionaryEditor.mjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs +13 -2
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +1 -0
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +13 -2
- package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs +30 -4
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts +2 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +32 -6
- package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs +32 -0
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +68 -0
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts.map +1 -1
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs +32 -0
- package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs.map +1 -1
- package/dist/components/Footer/index.cjs +3 -3
- package/dist/components/Footer/index.cjs.map +1 -1
- package/dist/components/Footer/index.mjs +3 -3
- package/dist/components/Footer/index.mjs.map +1 -1
- package/dist/components/Link/Link.cjs +2 -2
- package/dist/components/Link/Link.cjs.map +1 -1
- package/dist/components/Link/Link.d.ts +1 -1
- package/dist/components/Link/Link.d.ts.map +1 -1
- package/dist/components/Link/Link.mjs +2 -2
- package/dist/components/Link/Link.mjs.map +1 -1
- package/dist/components/Logo/Logo.cjs +43 -0
- package/dist/components/Logo/Logo.cjs.map +1 -0
- package/dist/components/Logo/Logo.d.ts +6 -0
- package/dist/components/Logo/Logo.d.ts.map +1 -0
- package/dist/components/Logo/Logo.mjs +43 -0
- package/dist/components/Logo/Logo.mjs.map +1 -0
- package/dist/components/Logo/LogoTextOnly.cjs +14 -82
- package/dist/components/Logo/LogoTextOnly.cjs.map +1 -1
- package/dist/components/Logo/LogoTextOnly.d.ts +2 -3
- package/dist/components/Logo/LogoTextOnly.d.ts.map +1 -1
- package/dist/components/Logo/LogoTextOnly.mjs +14 -82
- package/dist/components/Logo/LogoTextOnly.mjs.map +1 -1
- package/dist/components/Logo/LogoWithText.cjs +43 -0
- package/dist/components/Logo/LogoWithText.cjs.map +1 -0
- package/dist/components/Logo/LogoWithText.d.ts +3 -0
- package/dist/components/Logo/LogoWithText.d.ts.map +1 -0
- package/dist/components/Logo/LogoWithText.mjs +43 -0
- package/dist/components/Logo/LogoWithText.mjs.map +1 -0
- package/dist/components/Logo/LogoWithTextBelow.cjs +43 -0
- package/dist/components/Logo/LogoWithTextBelow.cjs.map +1 -0
- package/dist/components/Logo/LogoWithTextBelow.d.ts +6 -0
- package/dist/components/Logo/LogoWithTextBelow.d.ts.map +1 -0
- package/dist/components/Logo/LogoWithTextBelow.mjs +43 -0
- package/dist/components/Logo/LogoWithTextBelow.mjs.map +1 -0
- package/dist/components/Logo/index.cjs +7 -63
- package/dist/components/Logo/index.cjs.map +1 -1
- package/dist/components/Logo/index.d.ts +4 -19
- package/dist/components/Logo/index.d.ts.map +1 -1
- package/dist/components/Logo/index.mjs +7 -63
- package/dist/components/Logo/index.mjs.map +1 -1
- package/dist/components/SocialNetworks/{Facebook.cjs → FacebookLogo.cjs} +1 -1
- package/dist/components/SocialNetworks/FacebookLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{Facebook.d.ts → FacebookLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/FacebookLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/{Facebook.mjs → FacebookLogo.mjs} +1 -1
- package/dist/components/SocialNetworks/FacebookLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/InstagramLogo.cjs +16 -0
- package/dist/components/SocialNetworks/InstagramLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{Instagram.d.ts → InstagramLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/InstagramLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/InstagramLogo.mjs +16 -0
- package/dist/components/SocialNetworks/InstagramLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/{LinkedIn.cjs → LinkedInLogo.cjs} +2 -2
- package/dist/components/SocialNetworks/LinkedInLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{LinkedIn.d.ts → LinkedInLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/LinkedInLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/{LinkedIn.mjs → LinkedInLogo.mjs} +2 -2
- package/dist/components/SocialNetworks/LinkedInLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.cjs +17 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.d.ts +3 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.mjs +17 -0
- package/dist/components/SocialNetworks/ProductHuntLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/{Tiktok.cjs → TiktokLogo.cjs} +1 -1
- package/dist/components/SocialNetworks/TiktokLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{Tiktok.d.ts → TiktokLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/TiktokLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/{Tiktok.mjs → TiktokLogo.mjs} +1 -1
- package/dist/components/SocialNetworks/TiktokLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/{X.cjs → XLogo.cjs} +1 -1
- package/dist/components/SocialNetworks/XLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{X.d.ts → XLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/XLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/{X.mjs → XLogo.mjs} +1 -1
- package/dist/components/SocialNetworks/XLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/{Youtube.cjs → YoutubeLogo.cjs} +1 -1
- package/dist/components/SocialNetworks/YoutubeLogo.cjs.map +1 -0
- package/dist/components/SocialNetworks/{Youtube.d.ts → YoutubeLogo.d.ts} +1 -1
- package/dist/components/SocialNetworks/YoutubeLogo.d.ts.map +1 -0
- package/dist/components/SocialNetworks/{Youtube.mjs → YoutubeLogo.mjs} +1 -1
- package/dist/components/SocialNetworks/YoutubeLogo.mjs.map +1 -0
- package/dist/components/SocialNetworks/index.cjs +28 -14
- package/dist/components/SocialNetworks/index.cjs.map +1 -1
- package/dist/components/SocialNetworks/index.d.ts +7 -1
- package/dist/components/SocialNetworks/index.d.ts.map +1 -1
- package/dist/components/SocialNetworks/index.mjs +23 -9
- package/dist/components/SocialNetworks/index.mjs.map +1 -1
- package/dist/components/SwitchSelector/index.cjs +1 -1
- package/dist/components/SwitchSelector/index.cjs.map +1 -1
- package/dist/components/SwitchSelector/index.d.ts +1 -1
- package/dist/components/SwitchSelector/index.d.ts.map +1 -1
- package/dist/components/SwitchSelector/index.mjs +1 -1
- package/dist/components/SwitchSelector/index.mjs.map +1 -1
- package/dist/components/index.cjs +22 -2
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.mjs +21 -1
- package/dist/components/index.mjs.map +1 -1
- package/dist/hooks/index.cjs +1 -0
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.mjs +2 -1
- package/dist/hooks/intlayerAPIHooks.cjs +6 -0
- package/dist/hooks/intlayerAPIHooks.cjs.map +1 -1
- package/dist/hooks/intlayerAPIHooks.d.ts +2 -1
- package/dist/hooks/intlayerAPIHooks.d.ts.map +1 -1
- package/dist/hooks/intlayerAPIHooks.mjs +6 -0
- package/dist/hooks/intlayerAPIHooks.mjs.map +1 -1
- package/dist/hooks/useIntlayerAPI.d.ts +2 -1
- package/dist/hooks/useIntlayerAPI.d.ts.map +1 -1
- package/dist/tailwind.css +1 -1
- package/package.json +18 -18
- package/dist/components/Logo/LogoCircle.cjs +0 -28
- package/dist/components/Logo/LogoCircle.cjs.map +0 -1
- package/dist/components/Logo/LogoCircle.d.ts +0 -4
- package/dist/components/Logo/LogoCircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoCircle.mjs +0 -28
- package/dist/components/Logo/LogoCircle.mjs.map +0 -1
- package/dist/components/Logo/LogoNoFrame.cjs +0 -111
- package/dist/components/Logo/LogoNoFrame.cjs.map +0 -1
- package/dist/components/Logo/LogoNoFrame.d.ts +0 -4
- package/dist/components/Logo/LogoNoFrame.d.ts.map +0 -1
- package/dist/components/Logo/LogoNoFrame.mjs +0 -111
- package/dist/components/Logo/LogoNoFrame.mjs.map +0 -1
- package/dist/components/Logo/LogoSquare.cjs +0 -28
- package/dist/components/Logo/LogoSquare.cjs.map +0 -1
- package/dist/components/Logo/LogoSquare.d.ts +0 -4
- package/dist/components/Logo/LogoSquare.d.ts.map +0 -1
- package/dist/components/Logo/LogoSquare.mjs +0 -28
- package/dist/components/Logo/LogoSquare.mjs.map +0 -1
- package/dist/components/Logo/LogoSquircle.cjs +0 -65
- package/dist/components/Logo/LogoSquircle.cjs.map +0 -1
- package/dist/components/Logo/LogoSquircle.d.ts +0 -4
- package/dist/components/Logo/LogoSquircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoSquircle.mjs +0 -65
- package/dist/components/Logo/LogoSquircle.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowCircle.cjs +0 -115
- package/dist/components/Logo/LogoWithTextBelowCircle.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowCircle.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextBelowCircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowCircle.mjs +0 -115
- package/dist/components/Logo/LogoWithTextBelowCircle.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowNoFrame.cjs +0 -114
- package/dist/components/Logo/LogoWithTextBelowNoFrame.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowNoFrame.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextBelowNoFrame.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowNoFrame.mjs +0 -114
- package/dist/components/Logo/LogoWithTextBelowNoFrame.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowSquircle.cjs +0 -68
- package/dist/components/Logo/LogoWithTextBelowSquircle.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowSquircle.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextBelowSquircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextBelowSquircle.mjs +0 -68
- package/dist/components/Logo/LogoWithTextBelowSquircle.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextCircle.cjs +0 -202
- package/dist/components/Logo/LogoWithTextCircle.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextCircle.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextCircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextCircle.mjs +0 -202
- package/dist/components/Logo/LogoWithTextCircle.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextNoFrame.cjs +0 -114
- package/dist/components/Logo/LogoWithTextNoFrame.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextNoFrame.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextNoFrame.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextNoFrame.mjs +0 -114
- package/dist/components/Logo/LogoWithTextNoFrame.mjs.map +0 -1
- package/dist/components/Logo/LogoWithTextSquircle.cjs +0 -68
- package/dist/components/Logo/LogoWithTextSquircle.cjs.map +0 -1
- package/dist/components/Logo/LogoWithTextSquircle.d.ts +0 -4
- package/dist/components/Logo/LogoWithTextSquircle.d.ts.map +0 -1
- package/dist/components/Logo/LogoWithTextSquircle.mjs +0 -68
- package/dist/components/Logo/LogoWithTextSquircle.mjs.map +0 -1
- package/dist/components/SocialNetworks/Facebook.cjs.map +0 -1
- package/dist/components/SocialNetworks/Facebook.d.ts.map +0 -1
- package/dist/components/SocialNetworks/Facebook.mjs.map +0 -1
- package/dist/components/SocialNetworks/Instagram.cjs +0 -16
- package/dist/components/SocialNetworks/Instagram.cjs.map +0 -1
- package/dist/components/SocialNetworks/Instagram.d.ts.map +0 -1
- package/dist/components/SocialNetworks/Instagram.mjs +0 -16
- package/dist/components/SocialNetworks/Instagram.mjs.map +0 -1
- package/dist/components/SocialNetworks/LinkedIn.cjs.map +0 -1
- package/dist/components/SocialNetworks/LinkedIn.d.ts.map +0 -1
- package/dist/components/SocialNetworks/LinkedIn.mjs.map +0 -1
- package/dist/components/SocialNetworks/Tiktok.cjs.map +0 -1
- package/dist/components/SocialNetworks/Tiktok.d.ts.map +0 -1
- package/dist/components/SocialNetworks/Tiktok.mjs.map +0 -1
- package/dist/components/SocialNetworks/X.cjs.map +0 -1
- package/dist/components/SocialNetworks/X.d.ts.map +0 -1
- package/dist/components/SocialNetworks/X.mjs.map +0 -1
- package/dist/components/SocialNetworks/Youtube.cjs.map +0 -1
- package/dist/components/SocialNetworks/Youtube.d.ts.map +0 -1
- package/dist/components/SocialNetworks/Youtube.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveForm.cjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"sourcesContent":["'use client';\n\nimport type { Dictionary as DistantDictionary } from '@intlayer/backend';\nimport type { Dictionary } from '@intlayer/core';\nimport {\n useDictionariesRecordActions,\n useEditedContent,\n} from '@intlayer/editor-react';\nimport { ArrowUpFromLine, Download, RotateCcw, Save } from 'lucide-react';\nimport {\n type DetailedHTMLProps,\n type FormHTMLAttributes,\n type FC,\n useState,\n} from 'react';\nimport { useDictionary } from 'react-intlayer';\nimport { usePushDictionaries, useWriteDictionary } from '../../../hooks';\nimport { cn } from '../../../utils/cn';\nimport { useAuth } from '../../Auth';\nimport { Form } from '../../Form';\nimport { saveDictionaryContent } from './saveForm.content';\nimport { Modal } from '../../../components/Modal';\n\ntype DictionaryDetailsProps = {\n dictionary: Dictionary;\n mode: ('local' | 'remote')[];\n} & DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;\n\nexport const SaveForm: FC<DictionaryDetailsProps> = ({\n dictionary,\n mode,\n className,\n ...props\n}) => {\n const [isFormatAlertModalOpen, setIsFormatAlertModalOpen] = useState(false);\n const { setLocaleDictionary } = useDictionariesRecordActions();\n const { writeDictionary, isLoading: isWriting } = useWriteDictionary();\n const { pushDictionaries, isLoading: isPushing } = usePushDictionaries();\n const isLoading = isWriting || isPushing;\n const isJsonFormat =\n mode.includes('local') && dictionary.filePath?.endsWith('.json');\n\n const { editedContent, restoreEditedContent } = useEditedContent();\n const {\n resetButton,\n saveButton,\n publishButton,\n downloadButton,\n confirmation,\n } = useDictionary(saveDictionaryContent);\n const { isAuthenticated } = useAuth();\n\n const editedDictionary = editedContent?.[dictionary.key];\n\n const isEdited =\n editedDictionary &&\n JSON.stringify(editedDictionary) !== JSON.stringify(dictionary);\n\n const isLocalDictionary =\n typeof (dictionary as DistantDictionary)?._id === 'undefined';\n\n const handleSaveDictionaryConfirmation = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await writeDictionary(updatedDictionary).then(() => {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n });\n };\n\n const handlePushDictionary = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await pushDictionaries([updatedDictionary]).then((res) => {\n if (res) {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n }\n });\n };\n\n return (\n <>\n <Modal\n isOpen={isFormatAlertModalOpen}\n title={confirmation.title.value}\n size=\"md\"\n >\n <form className=\"size-full px-3\">\n {isJsonFormat ? (\n <p className=\"text-neutral py-4 text-sm\">{confirmation.message}</p>\n ) : (\n <p className=\"text-neutral py-4 text-sm\">\n {confirmation.differentFormatMessage}\n </p>\n )}\n <div className=\"mt-12 flex justify-end gap-2 max-md:flex-col\">\n <Form.Button\n label={confirmation.cancelButton.label.value}\n disabled={!isEdited || isLoading}\n color=\"text\"\n className=\"max-md:w-full\"\n variant=\"outline\"\n onClick={() => setIsFormatAlertModalOpen(false)}\n >\n {confirmation.cancelButton.text}\n </Form.Button>\n <Form.Button\n label={confirmation.confirmButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handleSaveDictionaryConfirmation}\n >\n {confirmation.confirmButton.text}\n </Form.Button>\n </div>\n </form>\n </Modal>\n <form\n className={cn('flex justify-end gap-2 max-md:flex-col', className)}\n {...props}\n >\n {isEdited && (\n <Form.Button\n label={resetButton.label.value}\n disabled={!isEdited}\n Icon={RotateCcw}\n variant=\"outline\"\n color=\"text\"\n className=\"max-md:w-full\"\n onClick={() => restoreEditedContent(dictionary.key)}\n >\n {resetButton.text}\n </Form.Button>\n )}\n {mode.includes('local') && (\n <Form.Button\n label={downloadButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Download}\n color=\"text\"\n variant={isAuthenticated ? 'outline' : 'default'}\n className=\"max-md:w-full\"\n isLoading={isWriting}\n onClick={() => setIsFormatAlertModalOpen(true)}\n >\n {downloadButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') && isAuthenticated && isLocalDictionary && (\n <Form.Button\n label={publishButton.label.value}\n disabled={isLoading}\n Icon={ArrowUpFromLine}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {publishButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') &&\n isAuthenticated &&\n !isLocalDictionary &&\n isEdited && (\n <Form.Button\n label={saveButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {saveButton.text}\n </Form.Button>\n )}\n </form>\n </>\n );\n};\n"],"names":["useState","useDictionariesRecordActions","useWriteDictionary","usePushDictionaries","useEditedContent","useDictionary","saveDictionaryContent","useAuth","jsxs","Fragment","jsx","Modal","Form","Save","cn","RotateCcw","Download","ArrowUpFromLine"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SaveForm.cjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"sourcesContent":["'use client';\n\nimport type { Dictionary as DistantDictionary } from '@intlayer/backend';\nimport type { Dictionary } from '@intlayer/core';\nimport {\n useDictionariesRecordActions,\n useEditedContent,\n} from '@intlayer/editor-react';\nimport {\n ArrowUpFromLine,\n Download,\n RotateCcw,\n Save,\n Trash,\n} from 'lucide-react';\nimport {\n type DetailedHTMLProps,\n type FC,\n type FormHTMLAttributes,\n useState,\n} from 'react';\nimport { useDictionary } from 'react-intlayer';\nimport { Modal } from '../../../components/Modal';\nimport {\n useDeleteDictionary,\n usePushDictionaries,\n useWriteDictionary,\n} from '../../../hooks';\nimport { cn } from '../../../utils/cn';\nimport { useAuth } from '../../Auth';\nimport { Form } from '../../Form';\nimport { saveDictionaryContent } from './saveForm.content';\n\ntype DictionaryDetailsProps = {\n dictionary: Dictionary;\n mode: ('local' | 'remote')[];\n onDelete?: () => void;\n} & DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;\n\nexport const SaveForm: FC<DictionaryDetailsProps> = ({\n dictionary,\n mode,\n className,\n onDelete,\n ...props\n}) => {\n const [isFormatAlertModalOpen, setIsFormatAlertModalOpen] = useState(false);\n const { setLocaleDictionary } = useDictionariesRecordActions();\n const { deleteDictionary, isLoading: isDeleting } = useDeleteDictionary();\n const { writeDictionary, isLoading: isWriting } = useWriteDictionary();\n const { pushDictionaries, isLoading: isPushing } = usePushDictionaries();\n const isLoading = isWriting || isPushing;\n const isJsonFormat =\n mode.includes('local') && dictionary.filePath?.endsWith('.json');\n\n const { editedContent, restoreEditedContent } = useEditedContent();\n const {\n deleteButton,\n resetButton,\n saveButton,\n publishButton,\n downloadButton,\n confirmation,\n } = useDictionary(saveDictionaryContent);\n const { isAuthenticated } = useAuth();\n\n const editedDictionary = editedContent?.[dictionary.key];\n\n const isEdited =\n editedDictionary &&\n JSON.stringify(editedDictionary) !== JSON.stringify(dictionary);\n\n const isDistantDictionary =\n typeof (dictionary as DistantDictionary)?._id !== 'undefined';\n\n const handleSaveDictionaryConfirmation = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await writeDictionary(updatedDictionary).then(() => {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n });\n };\n\n const handlePushDictionary = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await pushDictionaries([updatedDictionary]).then((res) => {\n if (res) {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n }\n });\n };\n\n const handleDeleteDictionary = async () => {\n if (!(dictionary as DistantDictionary)._id) return;\n\n await deleteDictionary(\n (dictionary as DistantDictionary)._id.toString()\n ).then((res) => {\n if (res) {\n onDelete?.();\n }\n });\n };\n\n return (\n <>\n <Modal\n isOpen={isFormatAlertModalOpen}\n title={confirmation.title.value}\n size=\"md\"\n >\n <form className=\"size-full px-3\">\n {isJsonFormat ? (\n <p className=\"text-neutral py-4 text-sm\">{confirmation.message}</p>\n ) : (\n <p className=\"text-neutral py-4 text-sm\">\n {confirmation.differentFormatMessage}\n </p>\n )}\n <div className=\"mt-12 flex justify-end gap-2 max-md:flex-col\">\n <Form.Button\n label={confirmation.cancelButton.label.value}\n disabled={!isEdited || isLoading}\n color=\"text\"\n className=\"max-md:w-full\"\n variant=\"outline\"\n onClick={() => setIsFormatAlertModalOpen(false)}\n >\n {confirmation.cancelButton.text}\n </Form.Button>\n <Form.Button\n label={confirmation.confirmButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handleSaveDictionaryConfirmation}\n >\n {confirmation.confirmButton.text}\n </Form.Button>\n </div>\n </form>\n </Modal>\n <form\n className={cn('flex justify-end gap-2 max-md:flex-col', className)}\n {...props}\n >\n {mode.includes('remote') &&\n isDistantDictionary &&\n onDelete &&\n isAuthenticated && (\n <Form.Button\n label={deleteButton.label.value}\n Icon={Trash}\n color=\"error\"\n variant=\"outline\"\n className=\"max-md:w-full\"\n isLoading={isDeleting}\n onClick={handleDeleteDictionary}\n >\n {deleteButton.text}\n </Form.Button>\n )}\n {isEdited && (\n <Form.Button\n label={resetButton.label.value}\n disabled={!isEdited}\n Icon={RotateCcw}\n variant=\"outline\"\n color=\"text\"\n className=\"max-md:w-full\"\n onClick={() => restoreEditedContent(dictionary.key)}\n >\n {resetButton.text}\n </Form.Button>\n )}\n {mode.includes('local') && (\n <Form.Button\n label={downloadButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Download}\n color=\"text\"\n variant={isAuthenticated ? 'outline' : 'default'}\n className=\"max-md:w-full\"\n isLoading={isWriting}\n onClick={() => setIsFormatAlertModalOpen(true)}\n >\n {downloadButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') && isAuthenticated && !isDistantDictionary && (\n <Form.Button\n label={publishButton.label.value}\n disabled={isLoading}\n Icon={ArrowUpFromLine}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {publishButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') &&\n isAuthenticated &&\n isDistantDictionary &&\n isEdited && (\n <Form.Button\n label={saveButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {saveButton.text}\n </Form.Button>\n )}\n </form>\n </>\n );\n};\n"],"names":["useState","useDictionariesRecordActions","useDeleteDictionary","useWriteDictionary","usePushDictionaries","useEditedContent","useDictionary","saveDictionaryContent","useAuth","jsxs","Fragment","jsx","Modal","Form","Save","cn","Trash","RotateCcw","Download","ArrowUpFromLine"],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Dictionary } from '@intlayer/core';
|
|
2
|
-
import { DetailedHTMLProps,
|
|
2
|
+
import { DetailedHTMLProps, FC, FormHTMLAttributes } from 'react';
|
|
3
3
|
type DictionaryDetailsProps = {
|
|
4
4
|
dictionary: Dictionary;
|
|
5
5
|
mode: ('local' | 'remote')[];
|
|
6
|
+
onDelete?: () => void;
|
|
6
7
|
} & DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;
|
|
7
8
|
export declare const SaveForm: FC<DictionaryDetailsProps>;
|
|
8
9
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveForm.d.ts","sourceRoot":"","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"SaveForm.d.ts","sourceRoot":"","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAYjD,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,EAAE,EACP,KAAK,kBAAkB,EAExB,MAAM,OAAO,CAAC;AAaf,KAAK,sBAAsB,GAAG;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC,CAAC;AAE5E,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,sBAAsB,CAqM/C,CAAC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
3
3
|
import { useDictionariesRecordActions, useEditedContent } from "@intlayer/editor-react";
|
|
4
|
-
import { Save, RotateCcw, Download, ArrowUpFromLine } from "lucide-react";
|
|
4
|
+
import { Save, Trash, RotateCcw, Download, ArrowUpFromLine } from "lucide-react";
|
|
5
5
|
import { useState } from "react";
|
|
6
6
|
import { useDictionary } from "react-intlayer";
|
|
7
|
+
import { Modal } from "../../Modal/Modal.mjs";
|
|
7
8
|
import "../../../hooks/useScrollBlockage/useScrollBlockageStore.mjs";
|
|
8
9
|
import "../../../hooks/useAsync/useAsyncStateStore.mjs";
|
|
9
|
-
import { useWriteDictionary, usePushDictionaries } from "../../../hooks/intlayerAPIHooks.mjs";
|
|
10
|
+
import { useDeleteDictionary, useWriteDictionary, usePushDictionaries } from "../../../hooks/intlayerAPIHooks.mjs";
|
|
10
11
|
import "deepmerge";
|
|
11
12
|
import { cn } from "../../../utils/cn.mjs";
|
|
12
13
|
import "../../Button/Button.mjs";
|
|
@@ -26,7 +27,6 @@ import "../../Auth/ChangePasswordForm/changePasswordForm.content.mjs";
|
|
|
26
27
|
import "../../Auth/ChangePasswordForm/useChangePasswordSchema.content.mjs";
|
|
27
28
|
import "../../Auth/ResetPasswordForm/resetPasswordContent.content.mjs";
|
|
28
29
|
import "../../Auth/ResetPasswordForm/useResetPasswordSchema.content.mjs";
|
|
29
|
-
import { Modal } from "../../Modal/Modal.mjs";
|
|
30
30
|
import "@intlayer/config/built";
|
|
31
31
|
import "../../Auth/VerifyEmailForm/index.content.mjs";
|
|
32
32
|
import "../../Auth/DefineNewPasswordForm/defineNewPasswordForm.content.mjs";
|
|
@@ -36,16 +36,19 @@ const SaveForm = ({
|
|
|
36
36
|
dictionary,
|
|
37
37
|
mode,
|
|
38
38
|
className,
|
|
39
|
+
onDelete,
|
|
39
40
|
...props
|
|
40
41
|
}) => {
|
|
41
42
|
const [isFormatAlertModalOpen, setIsFormatAlertModalOpen] = useState(false);
|
|
42
43
|
const { setLocaleDictionary } = useDictionariesRecordActions();
|
|
44
|
+
const { deleteDictionary, isLoading: isDeleting } = useDeleteDictionary();
|
|
43
45
|
const { writeDictionary, isLoading: isWriting } = useWriteDictionary();
|
|
44
46
|
const { pushDictionaries, isLoading: isPushing } = usePushDictionaries();
|
|
45
47
|
const isLoading = isWriting || isPushing;
|
|
46
48
|
const isJsonFormat = mode.includes("local") && dictionary.filePath?.endsWith(".json");
|
|
47
49
|
const { editedContent, restoreEditedContent } = useEditedContent();
|
|
48
50
|
const {
|
|
51
|
+
deleteButton,
|
|
49
52
|
resetButton,
|
|
50
53
|
saveButton,
|
|
51
54
|
publishButton,
|
|
@@ -55,7 +58,7 @@ const SaveForm = ({
|
|
|
55
58
|
const { isAuthenticated } = useAuth();
|
|
56
59
|
const editedDictionary = editedContent?.[dictionary.key];
|
|
57
60
|
const isEdited = editedDictionary && JSON.stringify(editedDictionary) !== JSON.stringify(dictionary);
|
|
58
|
-
const
|
|
61
|
+
const isDistantDictionary = typeof dictionary?._id !== "undefined";
|
|
59
62
|
const handleSaveDictionaryConfirmation = async () => {
|
|
60
63
|
if (!editedContent?.[dictionary.key]) return;
|
|
61
64
|
const updatedDictionary = {
|
|
@@ -80,6 +83,16 @@ const SaveForm = ({
|
|
|
80
83
|
}
|
|
81
84
|
});
|
|
82
85
|
};
|
|
86
|
+
const handleDeleteDictionary = async () => {
|
|
87
|
+
if (!dictionary._id) return;
|
|
88
|
+
await deleteDictionary(
|
|
89
|
+
dictionary._id.toString()
|
|
90
|
+
).then((res) => {
|
|
91
|
+
if (res) {
|
|
92
|
+
onDelete?.();
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
};
|
|
83
96
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
84
97
|
/* @__PURE__ */ jsx(
|
|
85
98
|
Modal,
|
|
@@ -125,6 +138,19 @@ const SaveForm = ({
|
|
|
125
138
|
className: cn("flex justify-end gap-2 max-md:flex-col", className),
|
|
126
139
|
...props,
|
|
127
140
|
children: [
|
|
141
|
+
mode.includes("remote") && isDistantDictionary && onDelete && isAuthenticated && /* @__PURE__ */ jsx(
|
|
142
|
+
Form.Button,
|
|
143
|
+
{
|
|
144
|
+
label: deleteButton.label.value,
|
|
145
|
+
Icon: Trash,
|
|
146
|
+
color: "error",
|
|
147
|
+
variant: "outline",
|
|
148
|
+
className: "max-md:w-full",
|
|
149
|
+
isLoading: isDeleting,
|
|
150
|
+
onClick: handleDeleteDictionary,
|
|
151
|
+
children: deleteButton.text
|
|
152
|
+
}
|
|
153
|
+
),
|
|
128
154
|
isEdited && /* @__PURE__ */ jsx(
|
|
129
155
|
Form.Button,
|
|
130
156
|
{
|
|
@@ -152,7 +178,7 @@ const SaveForm = ({
|
|
|
152
178
|
children: downloadButton.text
|
|
153
179
|
}
|
|
154
180
|
),
|
|
155
|
-
mode.includes("remote") && isAuthenticated &&
|
|
181
|
+
mode.includes("remote") && isAuthenticated && !isDistantDictionary && /* @__PURE__ */ jsx(
|
|
156
182
|
Form.Button,
|
|
157
183
|
{
|
|
158
184
|
label: publishButton.label.value,
|
|
@@ -165,7 +191,7 @@ const SaveForm = ({
|
|
|
165
191
|
children: publishButton.text
|
|
166
192
|
}
|
|
167
193
|
),
|
|
168
|
-
mode.includes("remote") && isAuthenticated &&
|
|
194
|
+
mode.includes("remote") && isAuthenticated && isDistantDictionary && isEdited && /* @__PURE__ */ jsx(
|
|
169
195
|
Form.Button,
|
|
170
196
|
{
|
|
171
197
|
label: saveButton.label.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveForm.mjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"sourcesContent":["'use client';\n\nimport type { Dictionary as DistantDictionary } from '@intlayer/backend';\nimport type { Dictionary } from '@intlayer/core';\nimport {\n useDictionariesRecordActions,\n useEditedContent,\n} from '@intlayer/editor-react';\nimport { ArrowUpFromLine, Download, RotateCcw, Save } from 'lucide-react';\nimport {\n type DetailedHTMLProps,\n type FormHTMLAttributes,\n type FC,\n useState,\n} from 'react';\nimport { useDictionary } from 'react-intlayer';\nimport { usePushDictionaries, useWriteDictionary } from '../../../hooks';\nimport { cn } from '../../../utils/cn';\nimport { useAuth } from '../../Auth';\nimport { Form } from '../../Form';\nimport { saveDictionaryContent } from './saveForm.content';\nimport { Modal } from '../../../components/Modal';\n\ntype DictionaryDetailsProps = {\n dictionary: Dictionary;\n mode: ('local' | 'remote')[];\n} & DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;\n\nexport const SaveForm: FC<DictionaryDetailsProps> = ({\n dictionary,\n mode,\n className,\n ...props\n}) => {\n const [isFormatAlertModalOpen, setIsFormatAlertModalOpen] = useState(false);\n const { setLocaleDictionary } = useDictionariesRecordActions();\n const { writeDictionary, isLoading: isWriting } = useWriteDictionary();\n const { pushDictionaries, isLoading: isPushing } = usePushDictionaries();\n const isLoading = isWriting || isPushing;\n const isJsonFormat =\n mode.includes('local') && dictionary.filePath?.endsWith('.json');\n\n const { editedContent, restoreEditedContent } = useEditedContent();\n const {\n resetButton,\n saveButton,\n publishButton,\n downloadButton,\n confirmation,\n } = useDictionary(saveDictionaryContent);\n const { isAuthenticated } = useAuth();\n\n const editedDictionary = editedContent?.[dictionary.key];\n\n const isEdited =\n editedDictionary &&\n JSON.stringify(editedDictionary) !== JSON.stringify(dictionary);\n\n const isLocalDictionary =\n typeof (dictionary as DistantDictionary)?._id === 'undefined';\n\n const handleSaveDictionaryConfirmation = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await writeDictionary(updatedDictionary).then(() => {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n });\n };\n\n const handlePushDictionary = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await pushDictionaries([updatedDictionary]).then((res) => {\n if (res) {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n }\n });\n };\n\n return (\n <>\n <Modal\n isOpen={isFormatAlertModalOpen}\n title={confirmation.title.value}\n size=\"md\"\n >\n <form className=\"size-full px-3\">\n {isJsonFormat ? (\n <p className=\"text-neutral py-4 text-sm\">{confirmation.message}</p>\n ) : (\n <p className=\"text-neutral py-4 text-sm\">\n {confirmation.differentFormatMessage}\n </p>\n )}\n <div className=\"mt-12 flex justify-end gap-2 max-md:flex-col\">\n <Form.Button\n label={confirmation.cancelButton.label.value}\n disabled={!isEdited || isLoading}\n color=\"text\"\n className=\"max-md:w-full\"\n variant=\"outline\"\n onClick={() => setIsFormatAlertModalOpen(false)}\n >\n {confirmation.cancelButton.text}\n </Form.Button>\n <Form.Button\n label={confirmation.confirmButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handleSaveDictionaryConfirmation}\n >\n {confirmation.confirmButton.text}\n </Form.Button>\n </div>\n </form>\n </Modal>\n <form\n className={cn('flex justify-end gap-2 max-md:flex-col', className)}\n {...props}\n >\n {isEdited && (\n <Form.Button\n label={resetButton.label.value}\n disabled={!isEdited}\n Icon={RotateCcw}\n variant=\"outline\"\n color=\"text\"\n className=\"max-md:w-full\"\n onClick={() => restoreEditedContent(dictionary.key)}\n >\n {resetButton.text}\n </Form.Button>\n )}\n {mode.includes('local') && (\n <Form.Button\n label={downloadButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Download}\n color=\"text\"\n variant={isAuthenticated ? 'outline' : 'default'}\n className=\"max-md:w-full\"\n isLoading={isWriting}\n onClick={() => setIsFormatAlertModalOpen(true)}\n >\n {downloadButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') && isAuthenticated && isLocalDictionary && (\n <Form.Button\n label={publishButton.label.value}\n disabled={isLoading}\n Icon={ArrowUpFromLine}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {publishButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') &&\n isAuthenticated &&\n !isLocalDictionary &&\n isEdited && (\n <Form.Button\n label={saveButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {saveButton.text}\n </Form.Button>\n )}\n </form>\n </>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SaveForm.mjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/SaveForm.tsx"],"sourcesContent":["'use client';\n\nimport type { Dictionary as DistantDictionary } from '@intlayer/backend';\nimport type { Dictionary } from '@intlayer/core';\nimport {\n useDictionariesRecordActions,\n useEditedContent,\n} from '@intlayer/editor-react';\nimport {\n ArrowUpFromLine,\n Download,\n RotateCcw,\n Save,\n Trash,\n} from 'lucide-react';\nimport {\n type DetailedHTMLProps,\n type FC,\n type FormHTMLAttributes,\n useState,\n} from 'react';\nimport { useDictionary } from 'react-intlayer';\nimport { Modal } from '../../../components/Modal';\nimport {\n useDeleteDictionary,\n usePushDictionaries,\n useWriteDictionary,\n} from '../../../hooks';\nimport { cn } from '../../../utils/cn';\nimport { useAuth } from '../../Auth';\nimport { Form } from '../../Form';\nimport { saveDictionaryContent } from './saveForm.content';\n\ntype DictionaryDetailsProps = {\n dictionary: Dictionary;\n mode: ('local' | 'remote')[];\n onDelete?: () => void;\n} & DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;\n\nexport const SaveForm: FC<DictionaryDetailsProps> = ({\n dictionary,\n mode,\n className,\n onDelete,\n ...props\n}) => {\n const [isFormatAlertModalOpen, setIsFormatAlertModalOpen] = useState(false);\n const { setLocaleDictionary } = useDictionariesRecordActions();\n const { deleteDictionary, isLoading: isDeleting } = useDeleteDictionary();\n const { writeDictionary, isLoading: isWriting } = useWriteDictionary();\n const { pushDictionaries, isLoading: isPushing } = usePushDictionaries();\n const isLoading = isWriting || isPushing;\n const isJsonFormat =\n mode.includes('local') && dictionary.filePath?.endsWith('.json');\n\n const { editedContent, restoreEditedContent } = useEditedContent();\n const {\n deleteButton,\n resetButton,\n saveButton,\n publishButton,\n downloadButton,\n confirmation,\n } = useDictionary(saveDictionaryContent);\n const { isAuthenticated } = useAuth();\n\n const editedDictionary = editedContent?.[dictionary.key];\n\n const isEdited =\n editedDictionary &&\n JSON.stringify(editedDictionary) !== JSON.stringify(dictionary);\n\n const isDistantDictionary =\n typeof (dictionary as DistantDictionary)?._id !== 'undefined';\n\n const handleSaveDictionaryConfirmation = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await writeDictionary(updatedDictionary).then(() => {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n });\n };\n\n const handlePushDictionary = async () => {\n if (!editedContent?.[dictionary.key]) return;\n\n const updatedDictionary = {\n ...dictionary,\n ...editedContent?.[dictionary.key],\n };\n\n await pushDictionaries([updatedDictionary]).then((res) => {\n if (res) {\n setLocaleDictionary(editedContent?.[dictionary.key]);\n restoreEditedContent(dictionary.key);\n }\n });\n };\n\n const handleDeleteDictionary = async () => {\n if (!(dictionary as DistantDictionary)._id) return;\n\n await deleteDictionary(\n (dictionary as DistantDictionary)._id.toString()\n ).then((res) => {\n if (res) {\n onDelete?.();\n }\n });\n };\n\n return (\n <>\n <Modal\n isOpen={isFormatAlertModalOpen}\n title={confirmation.title.value}\n size=\"md\"\n >\n <form className=\"size-full px-3\">\n {isJsonFormat ? (\n <p className=\"text-neutral py-4 text-sm\">{confirmation.message}</p>\n ) : (\n <p className=\"text-neutral py-4 text-sm\">\n {confirmation.differentFormatMessage}\n </p>\n )}\n <div className=\"mt-12 flex justify-end gap-2 max-md:flex-col\">\n <Form.Button\n label={confirmation.cancelButton.label.value}\n disabled={!isEdited || isLoading}\n color=\"text\"\n className=\"max-md:w-full\"\n variant=\"outline\"\n onClick={() => setIsFormatAlertModalOpen(false)}\n >\n {confirmation.cancelButton.text}\n </Form.Button>\n <Form.Button\n label={confirmation.confirmButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handleSaveDictionaryConfirmation}\n >\n {confirmation.confirmButton.text}\n </Form.Button>\n </div>\n </form>\n </Modal>\n <form\n className={cn('flex justify-end gap-2 max-md:flex-col', className)}\n {...props}\n >\n {mode.includes('remote') &&\n isDistantDictionary &&\n onDelete &&\n isAuthenticated && (\n <Form.Button\n label={deleteButton.label.value}\n Icon={Trash}\n color=\"error\"\n variant=\"outline\"\n className=\"max-md:w-full\"\n isLoading={isDeleting}\n onClick={handleDeleteDictionary}\n >\n {deleteButton.text}\n </Form.Button>\n )}\n {isEdited && (\n <Form.Button\n label={resetButton.label.value}\n disabled={!isEdited}\n Icon={RotateCcw}\n variant=\"outline\"\n color=\"text\"\n className=\"max-md:w-full\"\n onClick={() => restoreEditedContent(dictionary.key)}\n >\n {resetButton.text}\n </Form.Button>\n )}\n {mode.includes('local') && (\n <Form.Button\n label={downloadButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Download}\n color=\"text\"\n variant={isAuthenticated ? 'outline' : 'default'}\n className=\"max-md:w-full\"\n isLoading={isWriting}\n onClick={() => setIsFormatAlertModalOpen(true)}\n >\n {downloadButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') && isAuthenticated && !isDistantDictionary && (\n <Form.Button\n label={publishButton.label.value}\n disabled={isLoading}\n Icon={ArrowUpFromLine}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {publishButton.text}\n </Form.Button>\n )}\n {mode.includes('remote') &&\n isAuthenticated &&\n isDistantDictionary &&\n isEdited && (\n <Form.Button\n label={saveButton.label.value}\n disabled={!isEdited || isLoading}\n Icon={Save}\n color=\"text\"\n className=\"max-md:w-full\"\n isLoading={isPushing}\n onClick={handlePushDictionary}\n >\n {saveButton.text}\n </Form.Button>\n )}\n </form>\n </>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,38 @@ const intlayer = require("intlayer");
|
|
|
4
4
|
const saveDictionaryContent = {
|
|
5
5
|
key: "save-dictionary-details",
|
|
6
6
|
content: {
|
|
7
|
+
deleteButton: {
|
|
8
|
+
text: intlayer.t({
|
|
9
|
+
en: "Delete dictionary",
|
|
10
|
+
"en-GB": "Delete dictionary",
|
|
11
|
+
fr: "Supprimer le dictionnaire",
|
|
12
|
+
es: "Eliminar diccionario",
|
|
13
|
+
de: "Wörterbuch löschen",
|
|
14
|
+
ja: "辞書を削除",
|
|
15
|
+
ko: "사전 삭제",
|
|
16
|
+
zh: "删除字典",
|
|
17
|
+
it: "Elimina dizionario",
|
|
18
|
+
pt: "Excluir dicionário",
|
|
19
|
+
hi: "शब्दकोश हटाएं",
|
|
20
|
+
ar: "حذف القاموس",
|
|
21
|
+
ru: "Удалить словарь"
|
|
22
|
+
}),
|
|
23
|
+
label: intlayer.t({
|
|
24
|
+
en: "Click to delete dictionary",
|
|
25
|
+
"en-GB": "Click to delete dictionary",
|
|
26
|
+
fr: "Cliquez pour supprimer le dictionnaire",
|
|
27
|
+
es: "Haga clic para eliminar el diccionario",
|
|
28
|
+
de: "Klicken Sie, um das Wörterbuch zu löschen",
|
|
29
|
+
ja: "辞書を削除するにはクリックしてください",
|
|
30
|
+
ko: "사전을 삭제하려면 클릭하세요",
|
|
31
|
+
zh: "单击以删除字典",
|
|
32
|
+
it: "Fai clic per eliminare il dizionario",
|
|
33
|
+
pt: "Clique para excluir o dicionário",
|
|
34
|
+
hi: "शब्दकोश हटाने के लिए क्लिक करें",
|
|
35
|
+
ar: "انقر لحذف القاموس",
|
|
36
|
+
ru: "Нажмите, чтобы удалить словарь"
|
|
37
|
+
})
|
|
38
|
+
},
|
|
7
39
|
resetButton: {
|
|
8
40
|
text: intlayer.t({
|
|
9
41
|
en: "Reset all changes",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveForm.content.cjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"sourcesContent":["import { t, type Dictionary } from 'intlayer';\n\nexport const saveDictionaryContent = {\n key: 'save-dictionary-details',\n content: {\n resetButton: {\n text: t({\n en: 'Reset all changes',\n 'en-GB': 'Reset all changes',\n fr: 'Réinitialiser toutes les modifications',\n es: 'Restablecer todas las modificaciones',\n de: 'Alle Änderungen zurücksetzen',\n ja: 'すべての変更をリセット',\n ko: '모든 변경 사항 초기화',\n zh: '重置所有更改',\n it: 'Reimposta tutte le modifiche',\n pt: 'Redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करें',\n ar: 'إعادة تعيين جميع التغييرات',\n ru: 'Сбросить все изменения',\n }),\n label: t({\n en: 'Click to reset all the changes',\n 'en-GB': 'Click to reset all the changes',\n fr: 'Cliquez pour réinitialiser toutes les modifications',\n es: 'Haga clic para restablecer todas las modificaciones',\n de: 'Klicken Sie, um alle Änderungen zurückzusetzen',\n ja: 'すべての変更をリセットするにはクリックしてください',\n ko: '모든 변경 사항을 초기화하려면 클릭하세요',\n zh: '单击以重置所有更改',\n it: 'Fai clic per ripristinare tutte le modifiche',\n pt: 'Clique para redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करने के लिए क्लिक करें',\n ar: 'انقر لإعادة تعيين جميع التغييرات',\n ru: 'Нажмите, чтобы сбросить все изменения',\n }),\n },\n saveButton: {\n text: t({\n en: 'Save changes',\n 'en-GB': 'Save changes',\n fr: 'Enregistrer les modifications',\n es: 'Guardar cambios',\n de: 'Änderungen speichern',\n ja: '変更を保存',\n ko: '변경 사항 저장',\n zh: '保存更改',\n it: 'Salva le modifiche',\n pt: 'Salvar alterações',\n hi: 'परिवर्तनों को सहेजें',\n ar: 'احفظ التغييرات',\n ru: 'Сохранить изменения',\n }),\n label: t({\n en: 'Click to save changes',\n 'en-GB': 'Click to save changes',\n fr: 'Cliquez pour enregistrer les modifications',\n es: 'Haga clic para guardar cambios',\n de: 'Klicken Sie, um Änderungen zu speichern',\n ja: '変更を保存するにはクリックしてください',\n ko: '변경 사항을 저장하려면 클릭하세요',\n zh: '单击保存更改',\n it: 'Fai clic per salvare le modifiche',\n pt: 'Clique para salvar alterações',\n hi: 'परिवर्तनों को सहेजने के लिए क्लिक करें',\n ar: 'انقر لحفظ التغييرات',\n ru: 'Нажмите, чтобы сохранить изменения',\n }),\n },\n publishButton: {\n text: t({\n en: 'Publish dictionary',\n 'en-GB': 'Publish dictionary',\n fr: 'Publier dictionnaire',\n es: 'Publicar diccionario',\n de: 'Wörterbuch veröffentlichen',\n ja: '辞書を公開',\n ko: '사전을 게시합니다',\n zh: '发布字典',\n it: 'Pubblica dizionario',\n pt: 'Publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करें',\n ar: 'نشر القاموس',\n ru: 'Опубликовать словарь',\n }),\n label: t({\n en: 'Click to publish dictionary',\n 'en-GB': 'Click to publish dictionary',\n fr: 'Cliquez pour publier dictionnaire',\n es: 'Haga clic para publicar diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu veröffentlichen',\n ja: '辞書を公開するにはクリックしてください',\n ko: '사전을 게시하려면 클릭하세요',\n zh: '单击以发布字典',\n it: 'Fai clic per pubblicare il dizionario',\n pt: 'Clique para publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करने के लिए क्लिक करें',\n ar: 'انقر لنشر القاموس',\n ru: 'Нажмите, чтобы опубликовать словарь',\n }),\n },\n downloadButton: {\n text: t({\n en: 'Download',\n 'en-GB': 'Download',\n fr: 'Télécharger',\n es: 'Descargar',\n de: 'Herunterladen',\n ja: 'ダウンロード',\n ko: '다운로드',\n zh: '下载',\n it: 'Scarica',\n pt: 'Baixar',\n hi: 'डाउनलोड',\n ar: 'تنزيل',\n ru: 'Скачать',\n }),\n label: t({\n en: 'Click to download',\n 'en-GB': 'Click to download',\n fr: 'Cliquez pour télécharger',\n es: 'Haga clic para descargar',\n de: 'Klicken Sie, um herunterzuladen',\n ja: 'ダウンロードするにはクリックしてください',\n ko: '다운로드를 클릭하세요',\n zh: '单击下载',\n it: 'Fai clic per scaricare',\n pt: 'Clique para baixar',\n hi: 'डाउनलोड करने के लिए क्लिक करें',\n ar: 'انقر لتنزيل',\n ru: 'Нажмите, чтобы скачать',\n }),\n },\n\n confirmation: {\n title: t({\n en: 'Confirmation',\n 'en-GB': 'Confirmation',\n fr: 'Confirmation',\n es: 'Confirmation',\n de: 'Confirmation',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmação',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтверждение',\n }),\n message: t({\n en: 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n 'en-GB':\n 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n fr: 'Cela remplacera le dictionnaire existant. Êtes-vous sûr de vouloir continuer?',\n es: 'Esto sobrescribirá el diccionario existente. ¿Estás seguro de que quieres continuar?',\n de: 'Dies wird das existierende Wörterbuch überschreiben. Sind Sie sicher, dass Sie fortfahren möchten?',\n ja: '既存の辞書を上書きします。続行しますか?',\n ko: '이는 기존 사전을 덮어 쓸 것입니다. 계속하시겠습니까?',\n zh: '这将覆盖现有的字典。你确定要继续吗?',\n it: 'Questo sovrascriverà il dizionario esistente. Sei sicuro di voler continuare?',\n pt: 'Isso sobrescreverá o dicionário existente. Você tem certeza de que deseja continuar?',\n hi: 'यह मौजूदा शब्दकोश को ओवरराइट करने जारी है। आप क्या आप जारी रखना चाहते हैं?',\n ar: 'سيتم الكتابة على القاموس الحالي. هل أنت متأكد من أنك تريد المتابعة؟',\n ru: 'Это перезапишет существующий словарь. Вы уверены, что хотите продолжить?',\n }),\n differentFormatMessage: t({\n en: 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n 'en-GB':\n 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n fr: 'Le dictionnaire est dans un format différent, il sera transformé en un fichier JSON. Êtes-vous sûr de vouloir continuer ? Cela remplacera le dictionnaire existant.',\n es: 'El diccionario está en un formato diferente, se transformará en un archivo JSON. ¿Estás seguro de que quieres continuar? Esto sobrescribirá el diccionario existente.',\n de: 'Das Wörterbuch ist in einem anderen Format, es wird in eine JSON-Datei umgewandelt. Sind Sie sicher, dass Sie fortfahren möchten? Dies wird das existierende Wörterbuch überschreiben.',\n ja: '辞書は異なる形式です。JSONファイルに変換されます。続行しますか?既存の辞書を上書きします。',\n ko: '사전은 다른 형식입니다. JSON 파일로 변환됩니다. 계속하시겠습니까? 이는 기존 사전을 덮어 쓸 것입니다.',\n zh: '字典是在不同格式中,它将转换为JSON文件。你确定要继续吗?这将覆盖现有的字典。',\n it: 'Il dizionario è in un formato diverso, verrà trasformato in un file JSON. Sei sicuro di voler continuare? Questo sovrascriverà il dizionario esistente.',\n pt: 'O dicionário está em um formato diferente, ele será transformado em um arquivo JSON. Você tem certeza de que deseja continuar? Isso sobrescreverá o dicionário existente.',\n }),\n confirmButton: {\n text: t({\n en: 'Confirm',\n 'en-GB': 'Confirm',\n fr: 'Confirmer',\n es: 'Confirmar',\n de: 'Bestätigen',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmar',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтвердить',\n }),\n label: t({\n en: 'Click to confirm',\n 'en-GB': 'Click to confirm',\n fr: 'Cliquez pour confirmer',\n es: 'Haga clic para confirmar',\n de: 'Klicken Sie, um zu bestätigen',\n ja: '確認するにはクリックしてください',\n ko: '확인을 클릭하세요',\n zh: '单击确认',\n it: 'Fai clic per confermare',\n pt: 'Clique para confirmar',\n hi: 'पुष्टि करने के लिए क्लिक करें',\n ar: 'انقر لتأكيد',\n ru: 'Нажмите, чтобы подтвердить',\n }),\n },\n cancelButton: {\n text: t({\n en: 'Cancel',\n 'en-GB': 'Cancel',\n fr: 'Annuler',\n es: 'Cancelar',\n de: 'Abbrechen',\n ja: 'キャンセル',\n ko: '취소',\n zh: '取消',\n it: 'Annulla',\n pt: 'Cancelar',\n hi: 'रद्द करें',\n ar: 'إلغاء',\n ru: 'Отмена',\n }),\n label: t({\n en: 'Click to cancel',\n 'en-GB': 'Click to cancel',\n fr: 'Cliquez pour annuler',\n es: 'Haga clic para cancelar',\n de: 'Klicken Sie, um abzubrechen',\n ja: 'キャンセルするにはクリックしてください',\n ko: '취소를 클릭하세요',\n zh: '单击取消',\n it: 'Fai clic per annullare',\n pt: 'Clique para cancelar',\n hi: 'रद्द करने के लिए क्लिक करें',\n ar: 'انقر لإلغاء',\n ru: 'Нажмите, чтобы отменить',\n }),\n },\n },\n },\n} satisfies Dictionary;\n"],"names":["t"],"mappings":";;;AAEO,MAAM,wBAAwB;AAAA,EACnC,KAAK;AAAA,EACL,SAAS;AAAA,IACP,aAAa;AAAA,MACX,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,YAAY;AAAA,MACV,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,eAAe;AAAA,MACb,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,gBAAgB;AAAA,MACd,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IAEA,cAAc;AAAA,MACZ,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,SAASA,SAAAA,EAAE;AAAA,QACT,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,wBAAwBA,SAAAA,EAAE;AAAA,QACxB,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,eAAe;AAAA,QACb,MAAMA,SAAAA,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAOA,SAAAA,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MACH;AAAA,MACA,cAAc;AAAA,QACZ,MAAMA,SAAAA,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAOA,SAAAA,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MAAA;AAAA,IACH;AAAA,EACF;AAEJ;;"}
|
|
1
|
+
{"version":3,"file":"saveForm.content.cjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"sourcesContent":["import { t, type Dictionary } from 'intlayer';\n\nexport const saveDictionaryContent = {\n key: 'save-dictionary-details',\n content: {\n deleteButton: {\n text: t({\n en: 'Delete dictionary',\n 'en-GB': 'Delete dictionary',\n fr: 'Supprimer le dictionnaire',\n es: 'Eliminar diccionario',\n de: 'Wörterbuch löschen',\n ja: '辞書を削除',\n ko: '사전 삭제',\n zh: '删除字典',\n it: 'Elimina dizionario',\n pt: 'Excluir dicionário',\n hi: 'शब्दकोश हटाएं',\n ar: 'حذف القاموس',\n ru: 'Удалить словарь',\n }),\n label: t({\n en: 'Click to delete dictionary',\n 'en-GB': 'Click to delete dictionary',\n fr: 'Cliquez pour supprimer le dictionnaire',\n es: 'Haga clic para eliminar el diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu löschen',\n ja: '辞書を削除するにはクリックしてください',\n ko: '사전을 삭제하려면 클릭하세요',\n zh: '单击以删除字典',\n it: 'Fai clic per eliminare il dizionario',\n pt: 'Clique para excluir o dicionário',\n hi: 'शब्दकोश हटाने के लिए क्लिक करें',\n ar: 'انقر لحذف القاموس',\n ru: 'Нажмите, чтобы удалить словарь',\n }),\n },\n resetButton: {\n text: t({\n en: 'Reset all changes',\n 'en-GB': 'Reset all changes',\n fr: 'Réinitialiser toutes les modifications',\n es: 'Restablecer todas las modificaciones',\n de: 'Alle Änderungen zurücksetzen',\n ja: 'すべての変更をリセット',\n ko: '모든 변경 사항 초기화',\n zh: '重置所有更改',\n it: 'Reimposta tutte le modifiche',\n pt: 'Redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करें',\n ar: 'إعادة تعيين جميع التغييرات',\n ru: 'Сбросить все изменения',\n }),\n label: t({\n en: 'Click to reset all the changes',\n 'en-GB': 'Click to reset all the changes',\n fr: 'Cliquez pour réinitialiser toutes les modifications',\n es: 'Haga clic para restablecer todas las modificaciones',\n de: 'Klicken Sie, um alle Änderungen zurückzusetzen',\n ja: 'すべての変更をリセットするにはクリックしてください',\n ko: '모든 변경 사항을 초기화하려면 클릭하세요',\n zh: '单击以重置所有更改',\n it: 'Fai clic per ripristinare tutte le modifiche',\n pt: 'Clique para redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करने के लिए क्लिक करें',\n ar: 'انقر لإعادة تعيين جميع التغييرات',\n ru: 'Нажмите, чтобы сбросить все изменения',\n }),\n },\n saveButton: {\n text: t({\n en: 'Save changes',\n 'en-GB': 'Save changes',\n fr: 'Enregistrer les modifications',\n es: 'Guardar cambios',\n de: 'Änderungen speichern',\n ja: '変更を保存',\n ko: '변경 사항 저장',\n zh: '保存更改',\n it: 'Salva le modifiche',\n pt: 'Salvar alterações',\n hi: 'परिवर्तनों को सहेजें',\n ar: 'احفظ التغييرات',\n ru: 'Сохранить изменения',\n }),\n label: t({\n en: 'Click to save changes',\n 'en-GB': 'Click to save changes',\n fr: 'Cliquez pour enregistrer les modifications',\n es: 'Haga clic para guardar cambios',\n de: 'Klicken Sie, um Änderungen zu speichern',\n ja: '変更を保存するにはクリックしてください',\n ko: '변경 사항을 저장하려면 클릭하세요',\n zh: '单击保存更改',\n it: 'Fai clic per salvare le modifiche',\n pt: 'Clique para salvar alterações',\n hi: 'परिवर्तनों को सहेजने के लिए क्लिक करें',\n ar: 'انقر لحفظ التغييرات',\n ru: 'Нажмите, чтобы сохранить изменения',\n }),\n },\n publishButton: {\n text: t({\n en: 'Publish dictionary',\n 'en-GB': 'Publish dictionary',\n fr: 'Publier dictionnaire',\n es: 'Publicar diccionario',\n de: 'Wörterbuch veröffentlichen',\n ja: '辞書を公開',\n ko: '사전을 게시합니다',\n zh: '发布字典',\n it: 'Pubblica dizionario',\n pt: 'Publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करें',\n ar: 'نشر القاموس',\n ru: 'Опубликовать словарь',\n }),\n label: t({\n en: 'Click to publish dictionary',\n 'en-GB': 'Click to publish dictionary',\n fr: 'Cliquez pour publier dictionnaire',\n es: 'Haga clic para publicar diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu veröffentlichen',\n ja: '辞書を公開するにはクリックしてください',\n ko: '사전을 게시하려면 클릭하세요',\n zh: '单击以发布字典',\n it: 'Fai clic per pubblicare il dizionario',\n pt: 'Clique para publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करने के लिए क्लिक करें',\n ar: 'انقر لنشر القاموس',\n ru: 'Нажмите, чтобы опубликовать словарь',\n }),\n },\n downloadButton: {\n text: t({\n en: 'Download',\n 'en-GB': 'Download',\n fr: 'Télécharger',\n es: 'Descargar',\n de: 'Herunterladen',\n ja: 'ダウンロード',\n ko: '다운로드',\n zh: '下载',\n it: 'Scarica',\n pt: 'Baixar',\n hi: 'डाउनलोड',\n ar: 'تنزيل',\n ru: 'Скачать',\n }),\n label: t({\n en: 'Click to download',\n 'en-GB': 'Click to download',\n fr: 'Cliquez pour télécharger',\n es: 'Haga clic para descargar',\n de: 'Klicken Sie, um herunterzuladen',\n ja: 'ダウンロードするにはクリックしてください',\n ko: '다운로드를 클릭하세요',\n zh: '单击下载',\n it: 'Fai clic per scaricare',\n pt: 'Clique para baixar',\n hi: 'डाउनलोड करने के लिए क्लिक करें',\n ar: 'انقر لتنزيل',\n ru: 'Нажмите, чтобы скачать',\n }),\n },\n\n confirmation: {\n title: t({\n en: 'Confirmation',\n 'en-GB': 'Confirmation',\n fr: 'Confirmation',\n es: 'Confirmation',\n de: 'Confirmation',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmação',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтверждение',\n }),\n message: t({\n en: 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n 'en-GB':\n 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n fr: 'Cela remplacera le dictionnaire existant. Êtes-vous sûr de vouloir continuer?',\n es: 'Esto sobrescribirá el diccionario existente. ¿Estás seguro de que quieres continuar?',\n de: 'Dies wird das existierende Wörterbuch überschreiben. Sind Sie sicher, dass Sie fortfahren möchten?',\n ja: '既存の辞書を上書きします。続行しますか?',\n ko: '이는 기존 사전을 덮어 쓸 것입니다. 계속하시겠습니까?',\n zh: '这将覆盖现有的字典。你确定要继续吗?',\n it: 'Questo sovrascriverà il dizionario esistente. Sei sicuro di voler continuare?',\n pt: 'Isso sobrescreverá o dicionário existente. Você tem certeza de que deseja continuar?',\n hi: 'यह मौजूदा शब्दकोश को ओवरराइट करने जारी है। आप क्या आप जारी रखना चाहते हैं?',\n ar: 'سيتم الكتابة على القاموس الحالي. هل أنت متأكد من أنك تريد المتابعة؟',\n ru: 'Это перезапишет существующий словарь. Вы уверены, что хотите продолжить?',\n }),\n differentFormatMessage: t({\n en: 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n 'en-GB':\n 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n fr: 'Le dictionnaire est dans un format différent, il sera transformé en un fichier JSON. Êtes-vous sûr de vouloir continuer ? Cela remplacera le dictionnaire existant.',\n es: 'El diccionario está en un formato diferente, se transformará en un archivo JSON. ¿Estás seguro de que quieres continuar? Esto sobrescribirá el diccionario existente.',\n de: 'Das Wörterbuch ist in einem anderen Format, es wird in eine JSON-Datei umgewandelt. Sind Sie sicher, dass Sie fortfahren möchten? Dies wird das existierende Wörterbuch überschreiben.',\n ja: '辞書は異なる形式です。JSONファイルに変換されます。続行しますか?既存の辞書を上書きします。',\n ko: '사전은 다른 형식입니다. JSON 파일로 변환됩니다. 계속하시겠습니까? 이는 기존 사전을 덮어 쓸 것입니다.',\n zh: '字典是在不同格式中,它将转换为JSON文件。你确定要继续吗?这将覆盖现有的字典。',\n it: 'Il dizionario è in un formato diverso, verrà trasformato in un file JSON. Sei sicuro di voler continuare? Questo sovrascriverà il dizionario esistente.',\n pt: 'O dicionário está em um formato diferente, ele será transformado em um arquivo JSON. Você tem certeza de que deseja continuar? Isso sobrescreverá o dicionário existente.',\n }),\n confirmButton: {\n text: t({\n en: 'Confirm',\n 'en-GB': 'Confirm',\n fr: 'Confirmer',\n es: 'Confirmar',\n de: 'Bestätigen',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmar',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтвердить',\n }),\n label: t({\n en: 'Click to confirm',\n 'en-GB': 'Click to confirm',\n fr: 'Cliquez pour confirmer',\n es: 'Haga clic para confirmar',\n de: 'Klicken Sie, um zu bestätigen',\n ja: '確認するにはクリックしてください',\n ko: '확인을 클릭하세요',\n zh: '单击确认',\n it: 'Fai clic per confermare',\n pt: 'Clique para confirmar',\n hi: 'पुष्टि करने के लिए क्लिक करें',\n ar: 'انقر لتأكيد',\n ru: 'Нажмите, чтобы подтвердить',\n }),\n },\n cancelButton: {\n text: t({\n en: 'Cancel',\n 'en-GB': 'Cancel',\n fr: 'Annuler',\n es: 'Cancelar',\n de: 'Abbrechen',\n ja: 'キャンセル',\n ko: '취소',\n zh: '取消',\n it: 'Annulla',\n pt: 'Cancelar',\n hi: 'रद्द करें',\n ar: 'إلغاء',\n ru: 'Отмена',\n }),\n label: t({\n en: 'Click to cancel',\n 'en-GB': 'Click to cancel',\n fr: 'Cliquez pour annuler',\n es: 'Haga clic para cancelar',\n de: 'Klicken Sie, um abzubrechen',\n ja: 'キャンセルするにはクリックしてください',\n ko: '취소를 클릭하세요',\n zh: '单击取消',\n it: 'Fai clic per annullare',\n pt: 'Clique para cancelar',\n hi: 'रद्द करने के लिए क्लिक करें',\n ar: 'انقر لإلغاء',\n ru: 'Нажмите, чтобы отменить',\n }),\n },\n },\n },\n} satisfies Dictionary;\n"],"names":["t"],"mappings":";;;AAEO,MAAM,wBAAwB;AAAA,EACnC,KAAK;AAAA,EACL,SAAS;AAAA,IACP,cAAc;AAAA,MACZ,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,aAAa;AAAA,MACX,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,YAAY;AAAA,MACV,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,eAAe;AAAA,MACb,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,gBAAgB;AAAA,MACd,MAAMA,SAAAA,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IAEA,cAAc;AAAA,MACZ,OAAOA,SAAAA,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,SAASA,SAAAA,EAAE;AAAA,QACT,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,wBAAwBA,SAAAA,EAAE;AAAA,QACxB,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,eAAe;AAAA,QACb,MAAMA,SAAAA,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAOA,SAAAA,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MACH;AAAA,MACA,cAAc;AAAA,QACZ,MAAMA,SAAAA,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAOA,SAAAA,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MAAA;AAAA,IACH;AAAA,EACF;AAEJ;;"}
|
|
@@ -1,6 +1,74 @@
|
|
|
1
1
|
export declare const saveDictionaryContent: {
|
|
2
2
|
key: string;
|
|
3
3
|
content: {
|
|
4
|
+
deleteButton: {
|
|
5
|
+
text: import('@intlayer/core').TypedNodeModel<import("@intlayer/core").NodeType.Translation, {
|
|
6
|
+
en: string;
|
|
7
|
+
'en-GB': string;
|
|
8
|
+
fr: string;
|
|
9
|
+
es: string;
|
|
10
|
+
de: string;
|
|
11
|
+
ja: string;
|
|
12
|
+
ko: string;
|
|
13
|
+
zh: string;
|
|
14
|
+
it: string;
|
|
15
|
+
pt: string;
|
|
16
|
+
hi: string;
|
|
17
|
+
ar: string;
|
|
18
|
+
ru: string;
|
|
19
|
+
}, {
|
|
20
|
+
nodeType: import("@intlayer/core").NodeType.Translation | "translation";
|
|
21
|
+
} & {
|
|
22
|
+
translation: {
|
|
23
|
+
en: string;
|
|
24
|
+
'en-GB': string;
|
|
25
|
+
fr: string;
|
|
26
|
+
es: string;
|
|
27
|
+
de: string;
|
|
28
|
+
ja: string;
|
|
29
|
+
ko: string;
|
|
30
|
+
zh: string;
|
|
31
|
+
it: string;
|
|
32
|
+
pt: string;
|
|
33
|
+
hi: string;
|
|
34
|
+
ar: string;
|
|
35
|
+
ru: string;
|
|
36
|
+
};
|
|
37
|
+
}>;
|
|
38
|
+
label: import('@intlayer/core').TypedNodeModel<import("@intlayer/core").NodeType.Translation, {
|
|
39
|
+
en: string;
|
|
40
|
+
'en-GB': string;
|
|
41
|
+
fr: string;
|
|
42
|
+
es: string;
|
|
43
|
+
de: string;
|
|
44
|
+
ja: string;
|
|
45
|
+
ko: string;
|
|
46
|
+
zh: string;
|
|
47
|
+
it: string;
|
|
48
|
+
pt: string;
|
|
49
|
+
hi: string;
|
|
50
|
+
ar: string;
|
|
51
|
+
ru: string;
|
|
52
|
+
}, {
|
|
53
|
+
nodeType: import("@intlayer/core").NodeType.Translation | "translation";
|
|
54
|
+
} & {
|
|
55
|
+
translation: {
|
|
56
|
+
en: string;
|
|
57
|
+
'en-GB': string;
|
|
58
|
+
fr: string;
|
|
59
|
+
es: string;
|
|
60
|
+
de: string;
|
|
61
|
+
ja: string;
|
|
62
|
+
ko: string;
|
|
63
|
+
zh: string;
|
|
64
|
+
it: string;
|
|
65
|
+
pt: string;
|
|
66
|
+
hi: string;
|
|
67
|
+
ar: string;
|
|
68
|
+
ru: string;
|
|
69
|
+
};
|
|
70
|
+
}>;
|
|
71
|
+
};
|
|
4
72
|
resetButton: {
|
|
5
73
|
text: import('@intlayer/core').TypedNodeModel<import("@intlayer/core").NodeType.Translation, {
|
|
6
74
|
en: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveForm.content.d.ts","sourceRoot":"","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"saveForm.content.d.ts","sourceRoot":"","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmRZ,CAAC"}
|
|
@@ -2,6 +2,38 @@ import { t } from "intlayer";
|
|
|
2
2
|
const saveDictionaryContent = {
|
|
3
3
|
key: "save-dictionary-details",
|
|
4
4
|
content: {
|
|
5
|
+
deleteButton: {
|
|
6
|
+
text: t({
|
|
7
|
+
en: "Delete dictionary",
|
|
8
|
+
"en-GB": "Delete dictionary",
|
|
9
|
+
fr: "Supprimer le dictionnaire",
|
|
10
|
+
es: "Eliminar diccionario",
|
|
11
|
+
de: "Wörterbuch löschen",
|
|
12
|
+
ja: "辞書を削除",
|
|
13
|
+
ko: "사전 삭제",
|
|
14
|
+
zh: "删除字典",
|
|
15
|
+
it: "Elimina dizionario",
|
|
16
|
+
pt: "Excluir dicionário",
|
|
17
|
+
hi: "शब्दकोश हटाएं",
|
|
18
|
+
ar: "حذف القاموس",
|
|
19
|
+
ru: "Удалить словарь"
|
|
20
|
+
}),
|
|
21
|
+
label: t({
|
|
22
|
+
en: "Click to delete dictionary",
|
|
23
|
+
"en-GB": "Click to delete dictionary",
|
|
24
|
+
fr: "Cliquez pour supprimer le dictionnaire",
|
|
25
|
+
es: "Haga clic para eliminar el diccionario",
|
|
26
|
+
de: "Klicken Sie, um das Wörterbuch zu löschen",
|
|
27
|
+
ja: "辞書を削除するにはクリックしてください",
|
|
28
|
+
ko: "사전을 삭제하려면 클릭하세요",
|
|
29
|
+
zh: "单击以删除字典",
|
|
30
|
+
it: "Fai clic per eliminare il dizionario",
|
|
31
|
+
pt: "Clique para excluir o dicionário",
|
|
32
|
+
hi: "शब्दकोश हटाने के लिए क्लिक करें",
|
|
33
|
+
ar: "انقر لحذف القاموس",
|
|
34
|
+
ru: "Нажмите, чтобы удалить словарь"
|
|
35
|
+
})
|
|
36
|
+
},
|
|
5
37
|
resetButton: {
|
|
6
38
|
text: t({
|
|
7
39
|
en: "Reset all changes",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveForm.content.mjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"sourcesContent":["import { t, type Dictionary } from 'intlayer';\n\nexport const saveDictionaryContent = {\n key: 'save-dictionary-details',\n content: {\n resetButton: {\n text: t({\n en: 'Reset all changes',\n 'en-GB': 'Reset all changes',\n fr: 'Réinitialiser toutes les modifications',\n es: 'Restablecer todas las modificaciones',\n de: 'Alle Änderungen zurücksetzen',\n ja: 'すべての変更をリセット',\n ko: '모든 변경 사항 초기화',\n zh: '重置所有更改',\n it: 'Reimposta tutte le modifiche',\n pt: 'Redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करें',\n ar: 'إعادة تعيين جميع التغييرات',\n ru: 'Сбросить все изменения',\n }),\n label: t({\n en: 'Click to reset all the changes',\n 'en-GB': 'Click to reset all the changes',\n fr: 'Cliquez pour réinitialiser toutes les modifications',\n es: 'Haga clic para restablecer todas las modificaciones',\n de: 'Klicken Sie, um alle Änderungen zurückzusetzen',\n ja: 'すべての変更をリセットするにはクリックしてください',\n ko: '모든 변경 사항을 초기화하려면 클릭하세요',\n zh: '单击以重置所有更改',\n it: 'Fai clic per ripristinare tutte le modifiche',\n pt: 'Clique para redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करने के लिए क्लिक करें',\n ar: 'انقر لإعادة تعيين جميع التغييرات',\n ru: 'Нажмите, чтобы сбросить все изменения',\n }),\n },\n saveButton: {\n text: t({\n en: 'Save changes',\n 'en-GB': 'Save changes',\n fr: 'Enregistrer les modifications',\n es: 'Guardar cambios',\n de: 'Änderungen speichern',\n ja: '変更を保存',\n ko: '변경 사항 저장',\n zh: '保存更改',\n it: 'Salva le modifiche',\n pt: 'Salvar alterações',\n hi: 'परिवर्तनों को सहेजें',\n ar: 'احفظ التغييرات',\n ru: 'Сохранить изменения',\n }),\n label: t({\n en: 'Click to save changes',\n 'en-GB': 'Click to save changes',\n fr: 'Cliquez pour enregistrer les modifications',\n es: 'Haga clic para guardar cambios',\n de: 'Klicken Sie, um Änderungen zu speichern',\n ja: '変更を保存するにはクリックしてください',\n ko: '변경 사항을 저장하려면 클릭하세요',\n zh: '单击保存更改',\n it: 'Fai clic per salvare le modifiche',\n pt: 'Clique para salvar alterações',\n hi: 'परिवर्तनों को सहेजने के लिए क्लिक करें',\n ar: 'انقر لحفظ التغييرات',\n ru: 'Нажмите, чтобы сохранить изменения',\n }),\n },\n publishButton: {\n text: t({\n en: 'Publish dictionary',\n 'en-GB': 'Publish dictionary',\n fr: 'Publier dictionnaire',\n es: 'Publicar diccionario',\n de: 'Wörterbuch veröffentlichen',\n ja: '辞書を公開',\n ko: '사전을 게시합니다',\n zh: '发布字典',\n it: 'Pubblica dizionario',\n pt: 'Publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करें',\n ar: 'نشر القاموس',\n ru: 'Опубликовать словарь',\n }),\n label: t({\n en: 'Click to publish dictionary',\n 'en-GB': 'Click to publish dictionary',\n fr: 'Cliquez pour publier dictionnaire',\n es: 'Haga clic para publicar diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu veröffentlichen',\n ja: '辞書を公開するにはクリックしてください',\n ko: '사전을 게시하려면 클릭하세요',\n zh: '单击以发布字典',\n it: 'Fai clic per pubblicare il dizionario',\n pt: 'Clique para publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करने के लिए क्लिक करें',\n ar: 'انقر لنشر القاموس',\n ru: 'Нажмите, чтобы опубликовать словарь',\n }),\n },\n downloadButton: {\n text: t({\n en: 'Download',\n 'en-GB': 'Download',\n fr: 'Télécharger',\n es: 'Descargar',\n de: 'Herunterladen',\n ja: 'ダウンロード',\n ko: '다운로드',\n zh: '下载',\n it: 'Scarica',\n pt: 'Baixar',\n hi: 'डाउनलोड',\n ar: 'تنزيل',\n ru: 'Скачать',\n }),\n label: t({\n en: 'Click to download',\n 'en-GB': 'Click to download',\n fr: 'Cliquez pour télécharger',\n es: 'Haga clic para descargar',\n de: 'Klicken Sie, um herunterzuladen',\n ja: 'ダウンロードするにはクリックしてください',\n ko: '다운로드를 클릭하세요',\n zh: '单击下载',\n it: 'Fai clic per scaricare',\n pt: 'Clique para baixar',\n hi: 'डाउनलोड करने के लिए क्लिक करें',\n ar: 'انقر لتنزيل',\n ru: 'Нажмите, чтобы скачать',\n }),\n },\n\n confirmation: {\n title: t({\n en: 'Confirmation',\n 'en-GB': 'Confirmation',\n fr: 'Confirmation',\n es: 'Confirmation',\n de: 'Confirmation',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmação',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтверждение',\n }),\n message: t({\n en: 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n 'en-GB':\n 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n fr: 'Cela remplacera le dictionnaire existant. Êtes-vous sûr de vouloir continuer?',\n es: 'Esto sobrescribirá el diccionario existente. ¿Estás seguro de que quieres continuar?',\n de: 'Dies wird das existierende Wörterbuch überschreiben. Sind Sie sicher, dass Sie fortfahren möchten?',\n ja: '既存の辞書を上書きします。続行しますか?',\n ko: '이는 기존 사전을 덮어 쓸 것입니다. 계속하시겠습니까?',\n zh: '这将覆盖现有的字典。你确定要继续吗?',\n it: 'Questo sovrascriverà il dizionario esistente. Sei sicuro di voler continuare?',\n pt: 'Isso sobrescreverá o dicionário existente. Você tem certeza de que deseja continuar?',\n hi: 'यह मौजूदा शब्दकोश को ओवरराइट करने जारी है। आप क्या आप जारी रखना चाहते हैं?',\n ar: 'سيتم الكتابة على القاموس الحالي. هل أنت متأكد من أنك تريد المتابعة؟',\n ru: 'Это перезапишет существующий словарь. Вы уверены, что хотите продолжить?',\n }),\n differentFormatMessage: t({\n en: 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n 'en-GB':\n 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n fr: 'Le dictionnaire est dans un format différent, il sera transformé en un fichier JSON. Êtes-vous sûr de vouloir continuer ? Cela remplacera le dictionnaire existant.',\n es: 'El diccionario está en un formato diferente, se transformará en un archivo JSON. ¿Estás seguro de que quieres continuar? Esto sobrescribirá el diccionario existente.',\n de: 'Das Wörterbuch ist in einem anderen Format, es wird in eine JSON-Datei umgewandelt. Sind Sie sicher, dass Sie fortfahren möchten? Dies wird das existierende Wörterbuch überschreiben.',\n ja: '辞書は異なる形式です。JSONファイルに変換されます。続行しますか?既存の辞書を上書きします。',\n ko: '사전은 다른 형식입니다. JSON 파일로 변환됩니다. 계속하시겠습니까? 이는 기존 사전을 덮어 쓸 것입니다.',\n zh: '字典是在不同格式中,它将转换为JSON文件。你确定要继续吗?这将覆盖现有的字典。',\n it: 'Il dizionario è in un formato diverso, verrà trasformato in un file JSON. Sei sicuro di voler continuare? Questo sovrascriverà il dizionario esistente.',\n pt: 'O dicionário está em um formato diferente, ele será transformado em um arquivo JSON. Você tem certeza de que deseja continuar? Isso sobrescreverá o dicionário existente.',\n }),\n confirmButton: {\n text: t({\n en: 'Confirm',\n 'en-GB': 'Confirm',\n fr: 'Confirmer',\n es: 'Confirmar',\n de: 'Bestätigen',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmar',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтвердить',\n }),\n label: t({\n en: 'Click to confirm',\n 'en-GB': 'Click to confirm',\n fr: 'Cliquez pour confirmer',\n es: 'Haga clic para confirmar',\n de: 'Klicken Sie, um zu bestätigen',\n ja: '確認するにはクリックしてください',\n ko: '확인을 클릭하세요',\n zh: '单击确认',\n it: 'Fai clic per confermare',\n pt: 'Clique para confirmar',\n hi: 'पुष्टि करने के लिए क्लिक करें',\n ar: 'انقر لتأكيد',\n ru: 'Нажмите, чтобы подтвердить',\n }),\n },\n cancelButton: {\n text: t({\n en: 'Cancel',\n 'en-GB': 'Cancel',\n fr: 'Annuler',\n es: 'Cancelar',\n de: 'Abbrechen',\n ja: 'キャンセル',\n ko: '취소',\n zh: '取消',\n it: 'Annulla',\n pt: 'Cancelar',\n hi: 'रद्द करें',\n ar: 'إلغاء',\n ru: 'Отмена',\n }),\n label: t({\n en: 'Click to cancel',\n 'en-GB': 'Click to cancel',\n fr: 'Cliquez pour annuler',\n es: 'Haga clic para cancelar',\n de: 'Klicken Sie, um abzubrechen',\n ja: 'キャンセルするにはクリックしてください',\n ko: '취소를 클릭하세요',\n zh: '单击取消',\n it: 'Fai clic per annullare',\n pt: 'Clique para cancelar',\n hi: 'रद्द करने के लिए क्लिक करें',\n ar: 'انقر لإلغاء',\n ru: 'Нажмите, чтобы отменить',\n }),\n },\n },\n },\n} satisfies Dictionary;\n"],"names":[],"mappings":";AAEO,MAAM,wBAAwB;AAAA,EACnC,KAAK;AAAA,EACL,SAAS;AAAA,IACP,aAAa;AAAA,MACX,MAAM,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAO,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,YAAY;AAAA,MACV,MAAM,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAO,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,eAAe;AAAA,MACb,MAAM,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAO,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IACA,gBAAgB;AAAA,MACd,MAAM,EAAE;AAAA,QACN,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,OAAO,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MACL,CAAA;AAAA,IACH;AAAA,IAEA,cAAc;AAAA,MACZ,OAAO,EAAE;AAAA,QACP,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,SAAS,EAAE;AAAA,QACT,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,wBAAwB,EAAE;AAAA,QACxB,IAAI;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA,CACL;AAAA,MACD,eAAe;AAAA,QACb,MAAM,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAO,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MACH;AAAA,MACA,cAAc;AAAA,QACZ,MAAM,EAAE;AAAA,UACN,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QAAA,CACL;AAAA,QACD,OAAO,EAAE;AAAA,UACP,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACL,CAAA;AAAA,MAAA;AAAA,IACH;AAAA,EACF;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"saveForm.content.mjs","sources":["../../../../src/components/DictionaryFieldEditor/SaveForm/saveForm.content.tsx"],"sourcesContent":["import { t, type Dictionary } from 'intlayer';\n\nexport const saveDictionaryContent = {\n key: 'save-dictionary-details',\n content: {\n deleteButton: {\n text: t({\n en: 'Delete dictionary',\n 'en-GB': 'Delete dictionary',\n fr: 'Supprimer le dictionnaire',\n es: 'Eliminar diccionario',\n de: 'Wörterbuch löschen',\n ja: '辞書を削除',\n ko: '사전 삭제',\n zh: '删除字典',\n it: 'Elimina dizionario',\n pt: 'Excluir dicionário',\n hi: 'शब्दकोश हटाएं',\n ar: 'حذف القاموس',\n ru: 'Удалить словарь',\n }),\n label: t({\n en: 'Click to delete dictionary',\n 'en-GB': 'Click to delete dictionary',\n fr: 'Cliquez pour supprimer le dictionnaire',\n es: 'Haga clic para eliminar el diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu löschen',\n ja: '辞書を削除するにはクリックしてください',\n ko: '사전을 삭제하려면 클릭하세요',\n zh: '单击以删除字典',\n it: 'Fai clic per eliminare il dizionario',\n pt: 'Clique para excluir o dicionário',\n hi: 'शब्दकोश हटाने के लिए क्लिक करें',\n ar: 'انقر لحذف القاموس',\n ru: 'Нажмите, чтобы удалить словарь',\n }),\n },\n resetButton: {\n text: t({\n en: 'Reset all changes',\n 'en-GB': 'Reset all changes',\n fr: 'Réinitialiser toutes les modifications',\n es: 'Restablecer todas las modificaciones',\n de: 'Alle Änderungen zurücksetzen',\n ja: 'すべての変更をリセット',\n ko: '모든 변경 사항 초기화',\n zh: '重置所有更改',\n it: 'Reimposta tutte le modifiche',\n pt: 'Redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करें',\n ar: 'إعادة تعيين جميع التغييرات',\n ru: 'Сбросить все изменения',\n }),\n label: t({\n en: 'Click to reset all the changes',\n 'en-GB': 'Click to reset all the changes',\n fr: 'Cliquez pour réinitialiser toutes les modifications',\n es: 'Haga clic para restablecer todas las modificaciones',\n de: 'Klicken Sie, um alle Änderungen zurückzusetzen',\n ja: 'すべての変更をリセットするにはクリックしてください',\n ko: '모든 변경 사항을 초기화하려면 클릭하세요',\n zh: '单击以重置所有更改',\n it: 'Fai clic per ripristinare tutte le modifiche',\n pt: 'Clique para redefinir todas as alterações',\n hi: 'सभी परिवर्तनों को रीसेट करने के लिए क्लिक करें',\n ar: 'انقر لإعادة تعيين جميع التغييرات',\n ru: 'Нажмите, чтобы сбросить все изменения',\n }),\n },\n saveButton: {\n text: t({\n en: 'Save changes',\n 'en-GB': 'Save changes',\n fr: 'Enregistrer les modifications',\n es: 'Guardar cambios',\n de: 'Änderungen speichern',\n ja: '変更を保存',\n ko: '변경 사항 저장',\n zh: '保存更改',\n it: 'Salva le modifiche',\n pt: 'Salvar alterações',\n hi: 'परिवर्तनों को सहेजें',\n ar: 'احفظ التغييرات',\n ru: 'Сохранить изменения',\n }),\n label: t({\n en: 'Click to save changes',\n 'en-GB': 'Click to save changes',\n fr: 'Cliquez pour enregistrer les modifications',\n es: 'Haga clic para guardar cambios',\n de: 'Klicken Sie, um Änderungen zu speichern',\n ja: '変更を保存するにはクリックしてください',\n ko: '변경 사항을 저장하려면 클릭하세요',\n zh: '单击保存更改',\n it: 'Fai clic per salvare le modifiche',\n pt: 'Clique para salvar alterações',\n hi: 'परिवर्तनों को सहेजने के लिए क्लिक करें',\n ar: 'انقر لحفظ التغييرات',\n ru: 'Нажмите, чтобы сохранить изменения',\n }),\n },\n publishButton: {\n text: t({\n en: 'Publish dictionary',\n 'en-GB': 'Publish dictionary',\n fr: 'Publier dictionnaire',\n es: 'Publicar diccionario',\n de: 'Wörterbuch veröffentlichen',\n ja: '辞書を公開',\n ko: '사전을 게시합니다',\n zh: '发布字典',\n it: 'Pubblica dizionario',\n pt: 'Publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करें',\n ar: 'نشر القاموس',\n ru: 'Опубликовать словарь',\n }),\n label: t({\n en: 'Click to publish dictionary',\n 'en-GB': 'Click to publish dictionary',\n fr: 'Cliquez pour publier dictionnaire',\n es: 'Haga clic para publicar diccionario',\n de: 'Klicken Sie, um das Wörterbuch zu veröffentlichen',\n ja: '辞書を公開するにはクリックしてください',\n ko: '사전을 게시하려면 클릭하세요',\n zh: '单击以发布字典',\n it: 'Fai clic per pubblicare il dizionario',\n pt: 'Clique para publicar dicionário',\n hi: 'शब्दकोश प्रकाशित करने के लिए क्लिक करें',\n ar: 'انقر لنشر القاموس',\n ru: 'Нажмите, чтобы опубликовать словарь',\n }),\n },\n downloadButton: {\n text: t({\n en: 'Download',\n 'en-GB': 'Download',\n fr: 'Télécharger',\n es: 'Descargar',\n de: 'Herunterladen',\n ja: 'ダウンロード',\n ko: '다운로드',\n zh: '下载',\n it: 'Scarica',\n pt: 'Baixar',\n hi: 'डाउनलोड',\n ar: 'تنزيل',\n ru: 'Скачать',\n }),\n label: t({\n en: 'Click to download',\n 'en-GB': 'Click to download',\n fr: 'Cliquez pour télécharger',\n es: 'Haga clic para descargar',\n de: 'Klicken Sie, um herunterzuladen',\n ja: 'ダウンロードするにはクリックしてください',\n ko: '다운로드를 클릭하세요',\n zh: '单击下载',\n it: 'Fai clic per scaricare',\n pt: 'Clique para baixar',\n hi: 'डाउनलोड करने के लिए क्लिक करें',\n ar: 'انقر لتنزيل',\n ru: 'Нажмите, чтобы скачать',\n }),\n },\n\n confirmation: {\n title: t({\n en: 'Confirmation',\n 'en-GB': 'Confirmation',\n fr: 'Confirmation',\n es: 'Confirmation',\n de: 'Confirmation',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmação',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтверждение',\n }),\n message: t({\n en: 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n 'en-GB':\n 'This will overwrite the existing dictionary. Are you sure you want to continue?',\n fr: 'Cela remplacera le dictionnaire existant. Êtes-vous sûr de vouloir continuer?',\n es: 'Esto sobrescribirá el diccionario existente. ¿Estás seguro de que quieres continuar?',\n de: 'Dies wird das existierende Wörterbuch überschreiben. Sind Sie sicher, dass Sie fortfahren möchten?',\n ja: '既存の辞書を上書きします。続行しますか?',\n ko: '이는 기존 사전을 덮어 쓸 것입니다. 계속하시겠습니까?',\n zh: '这将覆盖现有的字典。你确定要继续吗?',\n it: 'Questo sovrascriverà il dizionario esistente. Sei sicuro di voler continuare?',\n pt: 'Isso sobrescreverá o dicionário existente. Você tem certeza de que deseja continuar?',\n hi: 'यह मौजूदा शब्दकोश को ओवरराइट करने जारी है। आप क्या आप जारी रखना चाहते हैं?',\n ar: 'سيتم الكتابة على القاموس الحالي. هل أنت متأكد من أنك تريد المتابعة؟',\n ru: 'Это перезапишет существующий словарь. Вы уверены, что хотите продолжить?',\n }),\n differentFormatMessage: t({\n en: 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n 'en-GB':\n 'The dictionary is in a different format, it will be transformed into a JSON file. Are you sure you want to continue? This will overwrite the existing dictionary.',\n fr: 'Le dictionnaire est dans un format différent, il sera transformé en un fichier JSON. Êtes-vous sûr de vouloir continuer ? Cela remplacera le dictionnaire existant.',\n es: 'El diccionario está en un formato diferente, se transformará en un archivo JSON. ¿Estás seguro de que quieres continuar? Esto sobrescribirá el diccionario existente.',\n de: 'Das Wörterbuch ist in einem anderen Format, es wird in eine JSON-Datei umgewandelt. Sind Sie sicher, dass Sie fortfahren möchten? Dies wird das existierende Wörterbuch überschreiben.',\n ja: '辞書は異なる形式です。JSONファイルに変換されます。続行しますか?既存の辞書を上書きします。',\n ko: '사전은 다른 형식입니다. JSON 파일로 변환됩니다. 계속하시겠습니까? 이는 기존 사전을 덮어 쓸 것입니다.',\n zh: '字典是在不同格式中,它将转换为JSON文件。你确定要继续吗?这将覆盖现有的字典。',\n it: 'Il dizionario è in un formato diverso, verrà trasformato in un file JSON. Sei sicuro di voler continuare? Questo sovrascriverà il dizionario esistente.',\n pt: 'O dicionário está em um formato diferente, ele será transformado em um arquivo JSON. Você tem certeza de que deseja continuar? Isso sobrescreverá o dicionário existente.',\n }),\n confirmButton: {\n text: t({\n en: 'Confirm',\n 'en-GB': 'Confirm',\n fr: 'Confirmer',\n es: 'Confirmar',\n de: 'Bestätigen',\n ja: '確認',\n ko: '확인',\n zh: '确认',\n it: 'Conferma',\n pt: 'Confirmar',\n hi: 'पुष्टि करें',\n ar: 'تأكيد',\n ru: 'Подтвердить',\n }),\n label: t({\n en: 'Click to confirm',\n 'en-GB': 'Click to confirm',\n fr: 'Cliquez pour confirmer',\n es: 'Haga clic para confirmar',\n de: 'Klicken Sie, um zu bestätigen',\n ja: '確認するにはクリックしてください',\n ko: '확인을 클릭하세요',\n zh: '单击确认',\n it: 'Fai clic per confermare',\n pt: 'Clique para confirmar',\n hi: 'पुष्टि करने के लिए क्लिक करें',\n ar: 'انقر لتأكيد',\n ru: 'Нажмите, чтобы подтвердить',\n }),\n },\n cancelButton: {\n text: t({\n en: 'Cancel',\n 'en-GB': 'Cancel',\n fr: 'Annuler',\n es: 'Cancelar',\n de: 'Abbrechen',\n ja: 'キャンセル',\n ko: '취소',\n zh: '取消',\n it: 'Annulla',\n pt: 'Cancelar',\n hi: 'रद्द करें',\n ar: 'إلغاء',\n ru: 'Отмена',\n }),\n label: t({\n en: 'Click to cancel',\n 'en-GB': 'Click to cancel',\n fr: 'Cliquez pour annuler',\n es: 'Haga clic para cancelar',\n de: 'Klicken Sie, um abzubrechen',\n ja: 'キャンセルするにはクリックしてください',\n ko: '취소를 클릭하세요',\n zh: '单击取消',\n it: 'Fai clic per annullare',\n pt: 'Clique para cancelar',\n hi: 'रद्द करने के लिए क्लिक करें',\n ar: 'انقر لإلغاء',\n ru: 'Нажмите, чтобы отменить',\n }),\n },\n },\n },\n} satisfies Dictionary;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const
|
|
4
|
+
const components_Logo_LogoWithTextBelow = require("../Logo/LogoWithTextBelow.cjs");
|
|
5
5
|
const components_SocialNetworks_index = require("../SocialNetworks/index.cjs");
|
|
6
6
|
const Footer = ({ links }) => /* @__PURE__ */ jsxRuntime.jsxs("footer", { className: "flex flex-auto flex-row flex-wrap items-center justify-around gap-10 p-6", children: [
|
|
7
|
-
/* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "flex flex-col items-center justify-between md:w-1/4
|
|
8
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7
|
+
/* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "flex flex-col items-center justify-between gap-3 md:w-1/4", children: [
|
|
8
|
+
/* @__PURE__ */ jsxRuntime.jsx(components_Logo_LogoWithTextBelow.LogoWithTextBelow, { className: "size-full max-w-[120px]" }),
|
|
9
9
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-neutral text-center text-xs", children: "© 2024 Intlayer, Inc." }),
|
|
10
10
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-row gap-3", children: /* @__PURE__ */ jsxRuntime.jsx(components_SocialNetworks_index.SocialNetworks, {}) })
|
|
11
11
|
] }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../src/components/Footer/index.tsx"],"sourcesContent":["import type { FC, ReactNode } from 'react';\nimport {
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../src/components/Footer/index.tsx"],"sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { LogoWithTextBelow } from '../Logo';\nimport { SocialNetworks } from '../SocialNetworks';\nexport type FooterLink = {\n href: string;\n text: ReactNode;\n onClick?: () => void;\n label: string;\n};\n\nexport type LinkGroup = { title: ReactNode; links: FooterLink[] };\n\ntype FooterProps = { links?: LinkGroup[] };\n\nexport const Footer: FC<FooterProps> = ({ links }) => (\n <footer className=\"flex flex-auto flex-row flex-wrap items-center justify-around gap-10 p-6\">\n <aside className=\"flex flex-col items-center justify-between gap-3 md:w-1/4\">\n <LogoWithTextBelow className=\"size-full max-w-[120px]\" />\n <span className=\"text-neutral text-center text-xs\">\n © 2024 Intlayer, Inc.\n </span>\n <div className=\"flex flex-row gap-3\">\n <SocialNetworks />\n </div>\n </aside>\n <div className=\"m-auto flex w-full flex-row flex-wrap justify-around gap-x-3 gap-y-6 md:w-2/3\">\n {(links ?? []).map(({ title, links }) => (\n <div\n className=\"flex flex-col gap-2\"\n key={links.map((link) => link.href).join(',')}\n >\n <strong>{title}</strong>\n <div className=\"flex flex-col gap-3 text-sm\">\n {links.map((link) => (\n <a key={link.href} href={link.href} aria-label={link.label}>\n {link.text}\n </a>\n ))}\n </div>\n </div>\n ))}\n </div>\n </footer>\n);\n"],"names":["jsxs","jsx","LogoWithTextBelow","SocialNetworks","links"],"mappings":";;;;;AAca,MAAA,SAA0B,CAAC,EAAE,YACvCA,2BAAAA,KAAA,UAAA,EAAO,WAAU,4EAChB,UAAA;AAAA,EAACA,2BAAAA,KAAA,SAAA,EAAM,WAAU,6DACf,UAAA;AAAA,IAACC,2BAAAA,IAAAC,kCAAA,mBAAA,EAAkB,WAAU,0BAA0B,CAAA;AAAA,IACtDD,2BAAA,IAAA,QAAA,EAAK,WAAU,oCAAmC,UAEnD,yBAAA;AAAA,mCACC,OAAI,EAAA,WAAU,uBACb,UAAAA,2BAAA,IAACE,kDAAe,EAClB,CAAA;AAAA,EAAA,GACF;AAAA,EACCF,2BAAAA,IAAA,OAAA,EAAI,WAAU,iFACX,WAAS,SAAA,CAAA,GAAI,IAAI,CAAC,EAAE,OAAO,OAAAG,OAC3B,MAAAJ,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MAGV,UAAA;AAAA,QAAAC,2BAAAA,IAAC,YAAQ,UAAM,MAAA,CAAA;AAAA,QACfA,2BAAAA,IAAC,SAAI,WAAU,+BACZ,UAAAG,OAAM,IAAI,CAAC,SACTH,2BAAAA,IAAA,KAAA,EAAkB,MAAM,KAAK,MAAM,cAAY,KAAK,OAClD,eAAK,KADA,GAAA,KAAK,IAEb,CACD,EACH,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IATKG,OAAM,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,KAAK,GAAG;AAAA,EAAA,CAW/C,EACH,CAAA;AAAA,EACF,CAAA;;"}
|