@strapi/i18n 5.46.1 → 5.47.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/admin/components/CMHeaderActions.js +3 -46
  2. package/dist/admin/components/CMHeaderActions.js.map +1 -1
  3. package/dist/admin/components/CMHeaderActions.mjs +4 -47
  4. package/dist/admin/components/CMHeaderActions.mjs.map +1 -1
  5. package/dist/admin/components/CreateLocale.js +1 -1
  6. package/dist/admin/components/CreateLocale.js.map +1 -1
  7. package/dist/admin/components/CreateLocale.mjs +1 -1
  8. package/dist/admin/components/CreateLocale.mjs.map +1 -1
  9. package/dist/admin/index.js +2 -1
  10. package/dist/admin/index.js.map +1 -1
  11. package/dist/admin/index.mjs +2 -1
  12. package/dist/admin/index.mjs.map +1 -1
  13. package/dist/admin/translations/{dk.json.js → da.json.js} +4 -8
  14. package/dist/admin/translations/da.json.js.map +1 -0
  15. package/dist/admin/translations/{dk.json.mjs → da.json.mjs} +4 -8
  16. package/dist/admin/translations/da.json.mjs.map +1 -0
  17. package/dist/admin/translations/en.json.js +2 -1
  18. package/dist/admin/translations/en.json.js.map +1 -1
  19. package/dist/admin/translations/en.json.mjs +2 -1
  20. package/dist/admin/translations/en.json.mjs.map +1 -1
  21. package/dist/admin/translations/es.json.js +2 -7
  22. package/dist/admin/translations/es.json.js.map +1 -1
  23. package/dist/admin/translations/es.json.mjs +2 -7
  24. package/dist/admin/translations/es.json.mjs.map +1 -1
  25. package/dist/admin/translations/fr.json.js +1 -5
  26. package/dist/admin/translations/fr.json.js.map +1 -1
  27. package/dist/admin/translations/fr.json.mjs +1 -5
  28. package/dist/admin/translations/fr.json.mjs.map +1 -1
  29. package/dist/admin/translations/ko.json.js +1 -5
  30. package/dist/admin/translations/ko.json.js.map +1 -1
  31. package/dist/admin/translations/ko.json.mjs +1 -5
  32. package/dist/admin/translations/ko.json.mjs.map +1 -1
  33. package/dist/admin/translations/ru.json.js +1 -5
  34. package/dist/admin/translations/ru.json.js.map +1 -1
  35. package/dist/admin/translations/ru.json.mjs +1 -5
  36. package/dist/admin/translations/ru.json.mjs.map +1 -1
  37. package/dist/admin/translations/sk.json.js +91 -0
  38. package/dist/admin/translations/sk.json.js.map +1 -0
  39. package/dist/admin/translations/sk.json.mjs +89 -0
  40. package/dist/admin/translations/sk.json.mjs.map +1 -0
  41. package/dist/admin/translations/tr.json.js +24 -7
  42. package/dist/admin/translations/tr.json.js.map +1 -1
  43. package/dist/admin/translations/tr.json.mjs +24 -7
  44. package/dist/admin/translations/tr.json.mjs.map +1 -1
  45. package/dist/admin/translations/zh-Hans.json.js +1 -4
  46. package/dist/admin/translations/zh-Hans.json.js.map +1 -1
  47. package/dist/admin/translations/zh-Hans.json.mjs +1 -4
  48. package/dist/admin/translations/zh-Hans.json.mjs.map +1 -1
  49. package/dist/admin/translations/zh.json.js +1 -5
  50. package/dist/admin/translations/zh.json.js.map +1 -1
  51. package/dist/admin/translations/zh.json.mjs +1 -5
  52. package/dist/admin/translations/zh.json.mjs.map +1 -1
  53. package/package.json +8 -8
  54. package/dist/admin/translations/dk.json.js.map +0 -1
  55. package/dist/admin/translations/dk.json.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CreateLocale.mjs","sources":["../../../admin/src/components/CreateLocale.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Form,\n type InputProps,\n InputRenderer,\n useField,\n type FormHelpers,\n useForm,\n useAPIErrorHandler,\n useNotification,\n useAuth,\n} from '@strapi/admin/strapi-admin';\nimport {\n Box,\n Button,\n ButtonProps,\n Combobox,\n ComboboxOption,\n Divider,\n Field,\n Flex,\n Grid,\n Modal,\n Tabs,\n Typography,\n useId,\n} from '@strapi/design-system';\nimport { Check, Plus } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport { CreateLocale } from '../../../shared/contracts/locales';\nimport { useCreateLocaleMutation, useGetDefaultLocalesQuery } from '../services/locales';\nimport { isBaseQueryError } from '../utils/baseQuery';\nimport { getTranslation } from '../utils/getTranslation';\n\n/* -------------------------------------------------------------------------------------------------\n * CreateLocale\n * -----------------------------------------------------------------------------------------------*/\n\ninterface CreateLocaleProps extends Pick<ButtonProps, 'disabled' | 'variant'> {}\n\nconst CreateLocale = ({ disabled, variant = 'default' }: CreateLocaleProps) => {\n const { formatMessage } = useIntl();\n const [visible, setVisible] = React.useState(false);\n\n return (\n <Modal.Root open={visible} onOpenChange={setVisible}>\n <Modal.Trigger>\n <Button\n variant={variant}\n disabled={disabled}\n startIcon={<Plus />}\n onClick={() => setVisible(true)}\n size=\"S\"\n fullWidth\n >\n {formatMessage({\n id: getTranslation('Settings.list.actions.add'),\n defaultMessage: 'Add new locale',\n })}\n </Button>\n </Modal.Trigger>\n <CreateModal onClose={() => setVisible(false)} />\n </Modal.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * CreateModal\n * -----------------------------------------------------------------------------------------------*/\n\nconst LOCALE_SCHEMA = yup.object().shape({\n code: yup.string().nullable().required({\n id: 'Settings.locales.modal.create.code.error',\n defaultMessage: 'Please select a locale',\n }),\n name: yup\n .string()\n .nullable()\n .max(50, {\n id: 'Settings.locales.modal.create.name.error.min',\n defaultMessage: 'The locale display name can only be less than 50 characters.',\n })\n .required({\n id: 'Settings.locales.modal.create.name.error.required',\n defaultMessage: 'Please give the locale a display name',\n }),\n isDefault: yup.boolean(),\n});\n\ntype FormValues = CreateLocale.Request['body'];\n\nconst initialFormValues = {\n code: '',\n name: '',\n isDefault: false,\n} satisfies FormValues;\n\ntype ModalCreateProps = {\n onClose: () => void;\n};\n\nconst CreateModal = ({ onClose }: ModalCreateProps) => {\n const titleId = useId();\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const [createLocale] = useCreateLocaleMutation();\n const { formatMessage } = useIntl();\n const refetchPermissions = useAuth('CreateModal', (state) => state.refetchPermissions);\n\n const handleSubmit = async (values: FormValues, helpers: FormHelpers<FormValues>) => {\n try {\n const res = await createLocale(values);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({ type: 'danger', message: formatAPIError(res.error) });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: getTranslation('Settings.locales.modal.create.success'),\n defaultMessage: 'Locale successfully added',\n }),\n });\n\n refetchPermissions();\n onClose();\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again',\n }),\n });\n }\n };\n\n return (\n <Modal.Content>\n <Form\n method=\"POST\"\n initialValues={initialFormValues}\n validationSchema={LOCALE_SCHEMA}\n onSubmit={handleSubmit}\n >\n <Modal.Header>\n <Modal.Title>\n {formatMessage({\n id: getTranslation('Settings.list.actions.add'),\n defaultMessage: 'Add new locale',\n })}\n </Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Tabs.Root variant=\"simple\" defaultValue=\"basic\">\n <Flex justifyContent=\"space-between\">\n <Typography tag=\"h2\" variant=\"beta\" id={titleId}>\n {formatMessage({\n id: getTranslation('Settings.locales.modal.title'),\n defaultMessage: 'Configuration',\n })}\n </Typography>\n <Tabs.List aria-labelledby={titleId}>\n <Tabs.Trigger value=\"basic\">\n {formatMessage({\n id: getTranslation('Settings.locales.modal.base'),\n defaultMessage: 'Basic settings',\n })}\n </Tabs.Trigger>\n <Tabs.Trigger value=\"advanced\">\n {formatMessage({\n id: getTranslation('Settings.locales.modal.advanced'),\n defaultMessage: 'Advanced settings',\n })}\n </Tabs.Trigger>\n </Tabs.List>\n </Flex>\n\n <Divider />\n\n <Box paddingTop={7} paddingBottom={7}>\n <Tabs.Content value=\"basic\">\n <BaseForm />\n </Tabs.Content>\n <Tabs.Content value=\"advanced\">\n <AdvancedForm />\n </Tabs.Content>\n </Box>\n </Tabs.Root>\n </Modal.Body>\n <Modal.Footer>\n <Modal.Close>\n <Button variant=\"tertiary\">\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Modal.Close>\n <SubmitButton />\n </Modal.Footer>\n </Form>\n </Modal.Content>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubmitButton\n * -----------------------------------------------------------------------------------------------*/\n\nconst SubmitButton = () => {\n const { formatMessage } = useIntl();\n const isSubmitting = useForm('SubmitButton', (state) => state.isSubmitting);\n const modified = useForm('SubmitButton', (state) => state.modified);\n\n return (\n <Button type=\"submit\" startIcon={<Check />} disabled={isSubmitting || !modified}>\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * BaseForm\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseFormProps {\n mode?: 'create' | 'edit';\n}\n\nconst BaseForm = ({ mode = 'create' }: BaseFormProps) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { data: defaultLocales, error } = useGetDefaultLocalesQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n if (!Array.isArray(defaultLocales)) {\n return null;\n }\n\n const options = defaultLocales.map((locale) => ({\n label: locale.name,\n value: locale.code,\n }));\n\n const translatedForm = [\n {\n disabled: mode !== 'create',\n label: {\n id: getTranslation('Settings.locales.modal.create.code.label'),\n defaultMessage: 'Locales',\n },\n name: 'code',\n options,\n placeholder: {\n id: 'components.placeholder.select',\n defaultMessage: 'Select',\n },\n required: true,\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: {\n id: getTranslation('Settings.locales.modal.create.name.label.description'),\n defaultMessage: 'Locale will be displayed under that name in the administration panel',\n },\n label: {\n id: getTranslation('Settings.locales.modal.create.name.label'),\n defaultMessage: 'Locale display name',\n },\n name: 'name',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n ].map((field) => ({\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n placeholder: field.placeholder ? formatMessage(field.placeholder) : undefined,\n }));\n\n return (\n <Grid.Root gap={4}>\n {translatedForm.map(({ size, ...field }) => (\n <Grid.Item key={field.name} xs={12} m={size} direction=\"column\" alignItems=\"stretch\">\n <FormRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AdvancedForm\n * -----------------------------------------------------------------------------------------------*/\n\ntype AdvancedFormProps = {\n isDefaultLocale?: boolean;\n};\n\nconst AdvancedForm = ({ isDefaultLocale }: AdvancedFormProps) => {\n const { formatMessage } = useIntl();\n\n const form = [\n {\n disabled: isDefaultLocale,\n hint: {\n id: getTranslation('Settings.locales.modal.advanced.setAsDefault.hint'),\n defaultMessage: 'One default locale is required, change it by selecting another one',\n },\n label: {\n id: getTranslation('Settings.locales.modal.advanced.setAsDefault'),\n defaultMessage: 'Set as default locale',\n },\n name: 'isDefault',\n size: 6,\n type: 'boolean' as const,\n },\n ].map((field) => ({\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n })) satisfies InputProps[];\n\n return (\n <Grid.Root gap={4}>\n {form.map(({ size, ...field }) => (\n <Grid.Item key={field.name} xs={12} m={size} direction=\"column\" alignItems=\"stretch\">\n <FormRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * FormRenderer\n * -----------------------------------------------------------------------------------------------*/\n\nconst FormRenderer = (field: InputProps) => {\n switch (field.type) {\n /**\n * This will override the default input renderer\n * choice for `enumeration`.\n */\n case 'enumeration':\n return <EnumerationInput {...field} />;\n default:\n return <InputRenderer {...field} />;\n }\n};\n\nconst EnumerationInput = ({\n disabled,\n hint,\n label,\n name,\n options,\n placeholder,\n required,\n}: Extract<InputProps, { type: 'enumeration' }>) => {\n const { value, error, onChange } = useField(name);\n const { data: defaultLocales = [] } = useGetDefaultLocalesQuery();\n\n const handleChange = (value: string) => {\n if (Array.isArray(defaultLocales)) {\n // We know it exists because the options are created from the list of default locales\n const locale = defaultLocales.find((locale) => locale.code === value)!;\n\n onChange(name, value);\n // This lets us automatically fill the name field with the locale name\n onChange('name', locale.name);\n } else {\n onChange(name, value);\n }\n };\n\n // Find the label for the current value to display in the combobox\n const selectedOption = options.find((option) => option.value === value);\n\n return (\n <Field.Root error={error} hint={hint} name={name} required={required}>\n <Field.Label>{label}</Field.Label>\n <Combobox\n disabled={disabled}\n onChange={handleChange}\n onClear={() => handleChange('')}\n placeholder={placeholder}\n value={value}\n textValue={selectedOption?.label}\n autocomplete={{ type: 'list', filter: 'contains' }}\n >\n {options.map((option) => (\n <ComboboxOption value={option.value} key={option.value}>\n {option.label}\n </ComboboxOption>\n ))}\n </Combobox>\n <Field.Error />\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { CreateLocale, BaseForm, AdvancedForm, SubmitButton, LOCALE_SCHEMA };\n"],"names":["CreateLocale","disabled","variant","formatMessage","useIntl","visible","setVisible","React","useState","_jsxs","Modal","Root","open","onOpenChange","_jsx","Trigger","Button","startIcon","Plus","onClick","size","fullWidth","id","getTranslation","defaultMessage","CreateModal","onClose","LOCALE_SCHEMA","yup","object","shape","code","string","nullable","required","name","max","isDefault","boolean","initialFormValues","titleId","useId","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","createLocale","useCreateLocaleMutation","refetchPermissions","useAuth","state","handleSubmit","values","helpers","res","isBaseQueryError","error","setErrors","type","message","err","Content","Form","method","initialValues","validationSchema","onSubmit","Header","Title","Body","Tabs","defaultValue","Flex","justifyContent","Typography","tag","List","aria-labelledby","value","Divider","Box","paddingTop","paddingBottom","BaseForm","AdvancedForm","Footer","Close","SubmitButton","isSubmitting","useForm","modified","Check","mode","data","defaultLocales","useGetDefaultLocalesQuery","useEffect","Array","isArray","options","map","locale","label","translatedForm","placeholder","hint","field","undefined","Grid","gap","Item","xs","m","direction","alignItems","FormRenderer","isDefaultLocale","form","EnumerationInput","InputRenderer","onChange","useField","handleChange","find","selectedOption","option","Field","Label","Combobox","onClear","textValue","autocomplete","filter","ComboboxOption","Error","Hint"],"mappings":"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"}
1
+ {"version":3,"file":"CreateLocale.mjs","sources":["../../../admin/src/components/CreateLocale.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Form,\n type InputProps,\n InputRenderer,\n useField,\n type FormHelpers,\n useForm,\n useAPIErrorHandler,\n useNotification,\n useAuth,\n} from '@strapi/admin/strapi-admin';\nimport {\n Box,\n Button,\n ButtonProps,\n Combobox,\n ComboboxOption,\n Divider,\n Field,\n Flex,\n Grid,\n Modal,\n Tabs,\n Typography,\n useId,\n} from '@strapi/design-system';\nimport { Check, Plus } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\nimport { CreateLocale } from '../../../shared/contracts/locales';\nimport { useCreateLocaleMutation, useGetDefaultLocalesQuery } from '../services/locales';\nimport { isBaseQueryError } from '../utils/baseQuery';\nimport { getTranslation } from '../utils/getTranslation';\n\n/* -------------------------------------------------------------------------------------------------\n * CreateLocale\n * -----------------------------------------------------------------------------------------------*/\n\ninterface CreateLocaleProps extends Pick<ButtonProps, 'disabled' | 'variant'> {}\n\nconst CreateLocale = ({ disabled, variant = 'default' }: CreateLocaleProps) => {\n const { formatMessage } = useIntl();\n const [visible, setVisible] = React.useState(false);\n\n return (\n <Modal.Root open={visible} onOpenChange={setVisible}>\n <Modal.Trigger>\n <Button\n variant={variant}\n disabled={disabled}\n startIcon={<Plus />}\n onClick={() => setVisible(true)}\n size=\"S\"\n fullWidth\n >\n {formatMessage({\n id: getTranslation('Settings.list.actions.add'),\n defaultMessage: 'Add new locale',\n })}\n </Button>\n </Modal.Trigger>\n <CreateModal onClose={() => setVisible(false)} />\n </Modal.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * CreateModal\n * -----------------------------------------------------------------------------------------------*/\n\nconst LOCALE_SCHEMA = yup.object().shape({\n code: yup.string().nullable().required({\n id: 'Settings.locales.modal.create.code.error',\n defaultMessage: 'Please select a locale',\n }),\n name: yup\n .string()\n .nullable()\n .max(50, {\n id: 'Settings.locales.modal.create.name.error.min',\n defaultMessage: 'The locale display name can only be less than 50 characters.',\n })\n .required({\n id: 'Settings.locales.modal.create.name.error.required',\n defaultMessage: 'Please give the locale a display name',\n }),\n isDefault: yup.boolean(),\n});\n\ntype FormValues = CreateLocale.Request['body'];\n\nconst initialFormValues = {\n code: '',\n name: '',\n isDefault: false,\n} satisfies FormValues;\n\ntype ModalCreateProps = {\n onClose: () => void;\n};\n\nconst CreateModal = ({ onClose }: ModalCreateProps) => {\n const titleId = useId();\n const { toggleNotification } = useNotification();\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n const [createLocale] = useCreateLocaleMutation();\n const { formatMessage } = useIntl();\n const refetchPermissions = useAuth('CreateModal', (state) => state.refetchPermissions);\n\n const handleSubmit = async (values: FormValues, helpers: FormHelpers<FormValues>) => {\n try {\n const res = await createLocale(values);\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n helpers.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({ type: 'danger', message: formatAPIError(res.error) });\n }\n\n return;\n }\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: getTranslation('Settings.locales.modal.create.success'),\n defaultMessage: 'Locale successfully added',\n }),\n });\n\n refetchPermissions();\n onClose();\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'An error occurred, please try again',\n }),\n });\n }\n };\n\n return (\n <Modal.Content>\n <Form\n method=\"POST\"\n initialValues={initialFormValues}\n validationSchema={LOCALE_SCHEMA}\n onSubmit={handleSubmit}\n >\n <Modal.Header>\n <Modal.Title>\n {formatMessage({\n id: getTranslation('Settings.list.actions.add'),\n defaultMessage: 'Add new locale',\n })}\n </Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Tabs.Root variant=\"simple\" defaultValue=\"basic\">\n <Flex justifyContent=\"space-between\">\n <Typography tag=\"h2\" variant=\"beta\" id={titleId}>\n {formatMessage({\n id: getTranslation('Settings.locales.modal.title'),\n defaultMessage: 'Configuration',\n })}\n </Typography>\n <Tabs.List aria-labelledby={titleId}>\n <Tabs.Trigger value=\"basic\">\n {formatMessage({\n id: getTranslation('Settings.locales.modal.base'),\n defaultMessage: 'Basic settings',\n })}\n </Tabs.Trigger>\n <Tabs.Trigger value=\"advanced\">\n {formatMessage({\n id: getTranslation('Settings.locales.modal.advanced'),\n defaultMessage: 'Advanced settings',\n })}\n </Tabs.Trigger>\n </Tabs.List>\n </Flex>\n\n <Divider />\n\n <Box paddingTop={7} paddingBottom={7}>\n <Tabs.Content value=\"basic\">\n <BaseForm />\n </Tabs.Content>\n <Tabs.Content value=\"advanced\">\n <AdvancedForm />\n </Tabs.Content>\n </Box>\n </Tabs.Root>\n </Modal.Body>\n <Modal.Footer>\n <Modal.Close>\n <Button variant=\"tertiary\">\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Modal.Close>\n <SubmitButton />\n </Modal.Footer>\n </Form>\n </Modal.Content>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubmitButton\n * -----------------------------------------------------------------------------------------------*/\n\nconst SubmitButton = () => {\n const { formatMessage } = useIntl();\n const isSubmitting = useForm('SubmitButton', (state) => state.isSubmitting);\n const modified = useForm('SubmitButton', (state) => state.modified);\n\n return (\n <Button type=\"submit\" startIcon={<Check />} disabled={isSubmitting || !modified}>\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * BaseForm\n * -----------------------------------------------------------------------------------------------*/\n\ninterface BaseFormProps {\n mode?: 'create' | 'edit';\n}\n\nconst BaseForm = ({ mode = 'create' }: BaseFormProps) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const { data: defaultLocales, error } = useGetDefaultLocalesQuery();\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n if (!Array.isArray(defaultLocales)) {\n return null;\n }\n\n const options = defaultLocales.map((locale) => ({\n label: locale.name,\n value: locale.code,\n }));\n\n const translatedForm = [\n {\n disabled: mode !== 'create',\n label: {\n id: getTranslation('Settings.locales.modal.create.code.label'),\n defaultMessage: 'Locales',\n },\n name: 'code',\n options,\n placeholder: {\n id: 'components.placeholder.select',\n defaultMessage: 'Select',\n },\n required: true,\n size: 6,\n type: 'enumeration' as const,\n },\n {\n hint: {\n id: getTranslation('Settings.locales.modal.create.name.description'),\n defaultMessage: 'Locale will be displayed under that name in the administration panel',\n },\n label: {\n id: getTranslation('Settings.locales.modal.create.name.label'),\n defaultMessage: 'Locale display name',\n },\n name: 'name',\n required: true,\n size: 6,\n type: 'string' as const,\n },\n ].map((field) => ({\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n placeholder: field.placeholder ? formatMessage(field.placeholder) : undefined,\n }));\n\n return (\n <Grid.Root gap={4}>\n {translatedForm.map(({ size, ...field }) => (\n <Grid.Item key={field.name} xs={12} m={size} direction=\"column\" alignItems=\"stretch\">\n <FormRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AdvancedForm\n * -----------------------------------------------------------------------------------------------*/\n\ntype AdvancedFormProps = {\n isDefaultLocale?: boolean;\n};\n\nconst AdvancedForm = ({ isDefaultLocale }: AdvancedFormProps) => {\n const { formatMessage } = useIntl();\n\n const form = [\n {\n disabled: isDefaultLocale,\n hint: {\n id: getTranslation('Settings.locales.modal.advanced.setAsDefault.hint'),\n defaultMessage: 'One default locale is required, change it by selecting another one',\n },\n label: {\n id: getTranslation('Settings.locales.modal.advanced.setAsDefault'),\n defaultMessage: 'Set as default locale',\n },\n name: 'isDefault',\n size: 6,\n type: 'boolean' as const,\n },\n ].map((field) => ({\n ...field,\n hint: field.hint ? formatMessage(field.hint) : undefined,\n label: formatMessage(field.label),\n })) satisfies InputProps[];\n\n return (\n <Grid.Root gap={4}>\n {form.map(({ size, ...field }) => (\n <Grid.Item key={field.name} xs={12} m={size} direction=\"column\" alignItems=\"stretch\">\n <FormRenderer {...field} />\n </Grid.Item>\n ))}\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * FormRenderer\n * -----------------------------------------------------------------------------------------------*/\n\nconst FormRenderer = (field: InputProps) => {\n switch (field.type) {\n /**\n * This will override the default input renderer\n * choice for `enumeration`.\n */\n case 'enumeration':\n return <EnumerationInput {...field} />;\n default:\n return <InputRenderer {...field} />;\n }\n};\n\nconst EnumerationInput = ({\n disabled,\n hint,\n label,\n name,\n options,\n placeholder,\n required,\n}: Extract<InputProps, { type: 'enumeration' }>) => {\n const { value, error, onChange } = useField(name);\n const { data: defaultLocales = [] } = useGetDefaultLocalesQuery();\n\n const handleChange = (value: string) => {\n if (Array.isArray(defaultLocales)) {\n // We know it exists because the options are created from the list of default locales\n const locale = defaultLocales.find((locale) => locale.code === value)!;\n\n onChange(name, value);\n // This lets us automatically fill the name field with the locale name\n onChange('name', locale.name);\n } else {\n onChange(name, value);\n }\n };\n\n // Find the label for the current value to display in the combobox\n const selectedOption = options.find((option) => option.value === value);\n\n return (\n <Field.Root error={error} hint={hint} name={name} required={required}>\n <Field.Label>{label}</Field.Label>\n <Combobox\n disabled={disabled}\n onChange={handleChange}\n onClear={() => handleChange('')}\n placeholder={placeholder}\n value={value}\n textValue={selectedOption?.label}\n autocomplete={{ type: 'list', filter: 'contains' }}\n >\n {options.map((option) => (\n <ComboboxOption value={option.value} key={option.value}>\n {option.label}\n </ComboboxOption>\n ))}\n </Combobox>\n <Field.Error />\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { CreateLocale, BaseForm, AdvancedForm, SubmitButton, LOCALE_SCHEMA };\n"],"names":["CreateLocale","disabled","variant","formatMessage","useIntl","visible","setVisible","React","useState","_jsxs","Modal","Root","open","onOpenChange","_jsx","Trigger","Button","startIcon","Plus","onClick","size","fullWidth","id","getTranslation","defaultMessage","CreateModal","onClose","LOCALE_SCHEMA","yup","object","shape","code","string","nullable","required","name","max","isDefault","boolean","initialFormValues","titleId","useId","toggleNotification","useNotification","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","createLocale","useCreateLocaleMutation","refetchPermissions","useAuth","state","handleSubmit","values","helpers","res","isBaseQueryError","error","setErrors","type","message","err","Content","Form","method","initialValues","validationSchema","onSubmit","Header","Title","Body","Tabs","defaultValue","Flex","justifyContent","Typography","tag","List","aria-labelledby","value","Divider","Box","paddingTop","paddingBottom","BaseForm","AdvancedForm","Footer","Close","SubmitButton","isSubmitting","useForm","modified","Check","mode","data","defaultLocales","useGetDefaultLocalesQuery","useEffect","Array","isArray","options","map","locale","label","translatedForm","placeholder","hint","field","undefined","Grid","gap","Item","xs","m","direction","alignItems","FormRenderer","isDefaultLocale","form","EnumerationInput","InputRenderer","onChange","useField","handleChange","find","selectedOption","option","Field","Label","Combobox","onClear","textValue","autocomplete","filter","ComboboxOption","Error","Hint"],"mappings":";;;;;;;;;;;AA2CA,MAAMA,eAAe,CAAC,EAAEC,QAAQ,EAAEC,OAAAA,GAAU,SAAS,EAAqB,GAAA;IACxE,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAM,CAACC,OAAAA,EAASC,UAAAA,CAAW,GAAGC,KAAAA,CAAMC,QAAQ,CAAC,KAAA,CAAA;IAE7C,qBACEC,IAAA,CAACC,MAAMC,IAAI,EAAA;QAACC,IAAAA,EAAMP,OAAAA;QAASQ,YAAAA,EAAcP,UAAAA;;AACvC,0BAAAQ,GAAA,CAACJ,MAAMK,OAAO,EAAA;AACZ,gBAAA,QAAA,gBAAAD,GAAA,CAACE,MAAAA,EAAAA;oBACCd,OAAAA,EAASA,OAAAA;oBACTD,QAAAA,EAAUA,QAAAA;AACVgB,oBAAAA,SAAAA,gBAAWH,GAAA,CAACI,IAAAA,EAAAA,EAAAA,CAAAA;AACZC,oBAAAA,OAAAA,EAAS,IAAMb,UAAAA,CAAW,IAAA,CAAA;oBAC1Bc,IAAAA,EAAK,GAAA;oBACLC,SAAS,EAAA,IAAA;8BAERlB,aAAAA,CAAc;AACbmB,wBAAAA,EAAAA,EAAIC,cAAAA,CAAe,2BAAA,CAAA;wBACnBC,cAAAA,EAAgB;AAClB,qBAAA;;;0BAGJV,GAAA,CAACW,WAAAA,EAAAA;AAAYC,gBAAAA,OAAAA,EAAS,IAAMpB,UAAAA,CAAW,KAAA;;;;AAG7C;AAEA;;AAEkG,2GAE5FqB,aAAAA,GAAgBC,GAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AACvCC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,QAAQ,EAAA,CAAGC,QAAQ,CAAC;QACrCZ,EAAAA,EAAI,0CAAA;QACJE,cAAAA,EAAgB;AAClB,KAAA,CAAA;AACAW,IAAAA,IAAAA,EAAMP,IACHI,MAAM,EAAA,CACNC,QAAQ,EAAA,CACRG,GAAG,CAAC,EAAA,EAAI;QACPd,EAAAA,EAAI,8CAAA;QACJE,cAAAA,EAAgB;AAClB,KAAA,CAAA,CACCU,QAAQ,CAAC;QACRZ,EAAAA,EAAI,mDAAA;QACJE,cAAAA,EAAgB;AAClB,KAAA,CAAA;AACFa,IAAAA,SAAAA,EAAWT,IAAIU,OAAO;AACxB,CAAA;AAIA,MAAMC,iBAAAA,GAAoB;IACxBR,IAAAA,EAAM,EAAA;IACNI,IAAAA,EAAM,EAAA;IACNE,SAAAA,EAAW;AACb,CAAA;AAMA,MAAMZ,WAAAA,GAAc,CAAC,EAAEC,OAAO,EAAoB,GAAA;AAChD,IAAA,MAAMc,OAAAA,GAAUC,KAAAA,EAAAA;IAChB,MAAM,EAAEC,kBAAkB,EAAE,GAAGC,eAAAA,EAAAA;AAC/B,IAAA,MAAM,EACJC,uBAAAA,EAAyBC,cAAc,EACvCC,+BAAAA,EAAiCC,sBAAsB,EACxD,GAAGC,kBAAAA,EAAAA;IACJ,MAAM,CAACC,aAAa,GAAGC,uBAAAA,EAAAA;IACvB,MAAM,EAAE/C,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAM+C,qBAAqBC,OAAAA,CAAQ,aAAA,EAAe,CAACC,KAAAA,GAAUA,MAAMF,kBAAkB,CAAA;IAErF,MAAMG,YAAAA,GAAe,OAAOC,MAAAA,EAAoBC,OAAAA,GAAAA;QAC9C,IAAI;YACF,MAAMC,GAAAA,GAAM,MAAMR,YAAAA,CAAaM,MAAAA,CAAAA;AAE/B,YAAA,IAAI,WAAWE,GAAAA,EAAK;gBAClB,IAAIC,gBAAAA,CAAiBD,IAAIE,KAAK,CAAA,IAAKF,IAAIE,KAAK,CAACxB,IAAI,KAAK,iBAAA,EAAmB;AACvEqB,oBAAAA,OAAAA,CAAQI,SAAS,CAACb,sBAAAA,CAAuBU,GAAAA,CAAIE,KAAK,CAAA,CAAA;gBACpD,CAAA,MAAO;oBACLjB,kBAAAA,CAAmB;wBAAEmB,IAAAA,EAAM,QAAA;wBAAUC,OAAAA,EAASjB,cAAAA,CAAeY,IAAIE,KAAK;AAAE,qBAAA,CAAA;AAC1E,gBAAA;AAEA,gBAAA;AACF,YAAA;YAEAjB,kBAAAA,CAAmB;gBACjBmB,IAAAA,EAAM,SAAA;AACNC,gBAAAA,OAAAA,EAAS3D,aAAAA,CAAc;AACrBmB,oBAAAA,EAAAA,EAAIC,cAAAA,CAAe,uCAAA,CAAA;oBACnBC,cAAAA,EAAgB;AAClB,iBAAA;AACF,aAAA,CAAA;AAEA2B,YAAAA,kBAAAA,EAAAA;AACAzB,YAAAA,OAAAA,EAAAA;AACF,QAAA,CAAA,CAAE,OAAOqC,GAAAA,EAAK;YACZrB,kBAAAA,CAAmB;gBACjBmB,IAAAA,EAAM,QAAA;AACNC,gBAAAA,OAAAA,EAAS3D,aAAAA,CAAc;oBACrBmB,EAAAA,EAAI,oBAAA;oBACJE,cAAAA,EAAgB;AAClB,iBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,IAAA,CAAA;IAEA,qBACEV,GAAA,CAACJ,MAAMsD,OAAO,EAAA;AACZ,QAAA,QAAA,gBAAAvD,IAAA,CAACwD,IAAAA,EAAAA;YACCC,MAAAA,EAAO,MAAA;YACPC,aAAAA,EAAe5B,iBAAAA;YACf6B,gBAAAA,EAAkBzC,aAAAA;YAClB0C,QAAAA,EAAUf,YAAAA;;AAEV,8BAAAxC,GAAA,CAACJ,MAAM4D,MAAM,EAAA;4CACXxD,GAAA,CAACJ,MAAM6D,KAAK,EAAA;kCACTpE,aAAAA,CAAc;AACbmB,4BAAAA,EAAAA,EAAIC,cAAAA,CAAe,2BAAA,CAAA;4BACnBC,cAAAA,EAAgB;AAClB,yBAAA;;;AAGJ,8BAAAV,GAAA,CAACJ,MAAM8D,IAAI,EAAA;4CACT/D,IAAA,CAACgE,KAAK9D,IAAI,EAAA;wBAACT,OAAAA,EAAQ,QAAA;wBAASwE,YAAAA,EAAa,OAAA;;0CACvCjE,IAAA,CAACkE,IAAAA,EAAAA;gCAAKC,cAAAA,EAAe,eAAA;;kDACnB9D,GAAA,CAAC+D,UAAAA,EAAAA;wCAAWC,GAAAA,EAAI,IAAA;wCAAK5E,OAAAA,EAAQ,MAAA;wCAAOoB,EAAAA,EAAIkB,OAAAA;kDACrCrC,aAAAA,CAAc;AACbmB,4CAAAA,EAAAA,EAAIC,cAAAA,CAAe,8BAAA,CAAA;4CACnBC,cAAAA,EAAgB;AAClB,yCAAA;;AAEF,kDAAAf,IAAA,CAACgE,KAAKM,IAAI,EAAA;wCAACC,iBAAAA,EAAiBxC,OAAAA;;AAC1B,0DAAA1B,GAAA,CAAC2D,KAAK1D,OAAO,EAAA;gDAACkE,KAAAA,EAAM,OAAA;0DACjB9E,aAAAA,CAAc;AACbmB,oDAAAA,EAAAA,EAAIC,cAAAA,CAAe,6BAAA,CAAA;oDACnBC,cAAAA,EAAgB;AAClB,iDAAA;;AAEF,0DAAAV,GAAA,CAAC2D,KAAK1D,OAAO,EAAA;gDAACkE,KAAAA,EAAM,UAAA;0DACjB9E,aAAAA,CAAc;AACbmB,oDAAAA,EAAAA,EAAIC,cAAAA,CAAe,iCAAA,CAAA;oDACnBC,cAAAA,EAAgB;AAClB,iDAAA;;;;;;0CAKNV,GAAA,CAACoE,OAAAA,EAAAA,EAAAA,CAAAA;0CAEDzE,IAAA,CAAC0E,GAAAA,EAAAA;gCAAIC,UAAAA,EAAY,CAAA;gCAAGC,aAAAA,EAAe,CAAA;;AACjC,kDAAAvE,GAAA,CAAC2D,KAAKT,OAAO,EAAA;wCAACiB,KAAAA,EAAM,OAAA;AAClB,wCAAA,QAAA,gBAAAnE,GAAA,CAACwE,QAAAA,EAAAA,EAAAA;;AAEH,kDAAAxE,GAAA,CAAC2D,KAAKT,OAAO,EAAA;wCAACiB,KAAAA,EAAM,UAAA;AAClB,wCAAA,QAAA,gBAAAnE,GAAA,CAACyE,YAAAA,EAAAA,EAAAA;;;;;;;AAKT,8BAAA9E,IAAA,CAACC,MAAM8E,MAAM,EAAA;;AACX,sCAAA1E,GAAA,CAACJ,MAAM+E,KAAK,EAAA;AACV,4BAAA,QAAA,gBAAA3E,GAAA,CAACE,MAAAA,EAAAA;gCAAOd,OAAAA,EAAQ,UAAA;0CACbC,aAAAA,CAAc;oCAAEmB,EAAAA,EAAI,8BAAA;oCAAgCE,cAAAA,EAAgB;AAAS,iCAAA;;;sCAGlFV,GAAA,CAAC4E,YAAAA,EAAAA,EAAAA;;;;;;AAKX,CAAA;AAEA;;AAEkG,2GAE5FA,YAAAA,GAAe,IAAA;IACnB,MAAM,EAAEvF,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAMuF,eAAeC,OAAAA,CAAQ,cAAA,EAAgB,CAACvC,KAAAA,GAAUA,MAAMsC,YAAY,CAAA;AAC1E,IAAA,MAAME,WAAWD,OAAAA,CAAQ,cAAA,EAAgB,CAACvC,KAAAA,GAAUA,MAAMwC,QAAQ,CAAA;AAElE,IAAA,qBACE/E,GAAA,CAACE,MAAAA,EAAAA;QAAO6C,IAAAA,EAAK,QAAA;AAAS5C,QAAAA,SAAAA,gBAAWH,GAAA,CAACgF,KAAAA,EAAAA,EAAAA,CAAAA;AAAU7F,QAAAA,QAAAA,EAAU0F,gBAAgB,CAACE,QAAAA;kBACpE1F,aAAAA,CAAc;YAAEmB,EAAAA,EAAI,aAAA;YAAeE,cAAAA,EAAgB;AAAO,SAAA;;AAGjE;AAUA,MAAM8D,QAAAA,GAAW,CAAC,EAAES,IAAAA,GAAO,QAAQ,EAAiB,GAAA;IAClD,MAAM,EAAE5F,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,EAAEsC,kBAAkB,EAAE,GAAGC,eAAAA,EAAAA;AAC/B,IAAA,MAAM,EAAEC,uBAAAA,EAAyBC,cAAc,EAAE,GAAGG,kBAAAA,EAAAA;AAEpD,IAAA,MAAM,EAAEgD,IAAAA,EAAMC,cAAc,EAAEtC,KAAK,EAAE,GAAGuC,yBAAAA,EAAAA;AAExC3F,IAAAA,KAAAA,CAAM4F,SAAS,CAAC,IAAA;AACd,QAAA,IAAIxC,KAAAA,EAAO;YACTjB,kBAAAA,CAAmB;gBACjBmB,IAAAA,EAAM,QAAA;AACNC,gBAAAA,OAAAA,EAASjB,cAAAA,CAAec,KAAAA;AAC1B,aAAA,CAAA;AACF,QAAA;IACF,CAAA,EAAG;AAACA,QAAAA,KAAAA;AAAOd,QAAAA,cAAAA;AAAgBH,QAAAA;AAAmB,KAAA,CAAA;AAE9C,IAAA,IAAI,CAAC0D,KAAAA,CAAMC,OAAO,CAACJ,cAAAA,CAAAA,EAAiB;QAClC,OAAO,IAAA;AACT,IAAA;AAEA,IAAA,MAAMK,UAAUL,cAAAA,CAAeM,GAAG,CAAC,CAACC,UAAY;AAC9CC,YAAAA,KAAAA,EAAOD,OAAOrE,IAAI;AAClB8C,YAAAA,KAAAA,EAAOuB,OAAOzE;SAChB,CAAA,CAAA;AAEA,IAAA,MAAM2E,cAAAA,GAAiB;AACrB,QAAA;AACEzG,YAAAA,QAAAA,EAAU8F,IAAAA,KAAS,QAAA;YACnBU,KAAAA,EAAO;AACLnF,gBAAAA,EAAAA,EAAIC,cAAAA,CAAe,0CAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA;YACAW,IAAAA,EAAM,MAAA;AACNmE,YAAAA,OAAAA;YACAK,WAAAA,EAAa;gBACXrF,EAAAA,EAAI,+BAAA;gBACJE,cAAAA,EAAgB;AAClB,aAAA;YACAU,QAAAA,EAAU,IAAA;YACVd,IAAAA,EAAM,CAAA;YACNyC,IAAAA,EAAM;AACR,SAAA;AACA,QAAA;YACE+C,IAAAA,EAAM;AACJtF,gBAAAA,EAAAA,EAAIC,cAAAA,CAAe,gDAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA;YACAiF,KAAAA,EAAO;AACLnF,gBAAAA,EAAAA,EAAIC,cAAAA,CAAe,0CAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA;YACAW,IAAAA,EAAM,MAAA;YACND,QAAAA,EAAU,IAAA;YACVd,IAAAA,EAAM,CAAA;YACNyC,IAAAA,EAAM;AACR;AACD,KAAA,CAAC0C,GAAG,CAAC,CAACM,KAAAA,IAAW;AAChB,YAAA,GAAGA,KAAK;AACRD,YAAAA,IAAAA,EAAMC,MAAMD,IAAI,GAAGzG,aAAAA,CAAc0G,KAAAA,CAAMD,IAAI,CAAA,GAAIE,SAAAA;YAC/CL,KAAAA,EAAOtG,aAAAA,CAAc0G,MAAMJ,KAAK,CAAA;AAChCE,YAAAA,WAAAA,EAAaE,MAAMF,WAAW,GAAGxG,aAAAA,CAAc0G,KAAAA,CAAMF,WAAW,CAAA,GAAIG;SACtE,CAAA,CAAA;IAEA,qBACEhG,GAAA,CAACiG,KAAKpG,IAAI,EAAA;QAACqG,GAAAA,EAAK,CAAA;kBACbN,cAAAA,CAAeH,GAAG,CAAC,CAAC,EAAEnF,IAAI,EAAE,GAAGyF,KAAAA,EAAO,iBACrC/F,GAAA,CAACiG,IAAAA,CAAKE,IAAI,EAAA;gBAAkBC,EAAAA,EAAI,EAAA;gBAAIC,CAAAA,EAAG/F,IAAAA;gBAAMgG,SAAAA,EAAU,QAAA;gBAASC,UAAAA,EAAW,SAAA;AACzE,gBAAA,QAAA,gBAAAvG,GAAA,CAACwG,YAAAA,EAAAA;AAAc,oBAAA,GAAGT;;AADJA,aAAAA,EAAAA,KAAAA,CAAM1E,IAAI,CAAA;;AAMlC;AAUA,MAAMoD,YAAAA,GAAe,CAAC,EAAEgC,eAAe,EAAqB,GAAA;IAC1D,MAAM,EAAEpH,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,MAAMoH,IAAAA,GAAO;AACX,QAAA;YACEvH,QAAAA,EAAUsH,eAAAA;YACVX,IAAAA,EAAM;AACJtF,gBAAAA,EAAAA,EAAIC,cAAAA,CAAe,mDAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA;YACAiF,KAAAA,EAAO;AACLnF,gBAAAA,EAAAA,EAAIC,cAAAA,CAAe,8CAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA;YACAW,IAAAA,EAAM,WAAA;YACNf,IAAAA,EAAM,CAAA;YACNyC,IAAAA,EAAM;AACR;AACD,KAAA,CAAC0C,GAAG,CAAC,CAACM,KAAAA,IAAW;AAChB,YAAA,GAAGA,KAAK;AACRD,YAAAA,IAAAA,EAAMC,MAAMD,IAAI,GAAGzG,aAAAA,CAAc0G,KAAAA,CAAMD,IAAI,CAAA,GAAIE,SAAAA;YAC/CL,KAAAA,EAAOtG,aAAAA,CAAc0G,MAAMJ,KAAK;SAClC,CAAA,CAAA;IAEA,qBACE3F,GAAA,CAACiG,KAAKpG,IAAI,EAAA;QAACqG,GAAAA,EAAK,CAAA;kBACbQ,IAAAA,CAAKjB,GAAG,CAAC,CAAC,EAAEnF,IAAI,EAAE,GAAGyF,KAAAA,EAAO,iBAC3B/F,GAAA,CAACiG,IAAAA,CAAKE,IAAI,EAAA;gBAAkBC,EAAAA,EAAI,EAAA;gBAAIC,CAAAA,EAAG/F,IAAAA;gBAAMgG,SAAAA,EAAU,QAAA;gBAASC,UAAAA,EAAW,SAAA;AACzE,gBAAA,QAAA,gBAAAvG,GAAA,CAACwG,YAAAA,EAAAA;AAAc,oBAAA,GAAGT;;AADJA,aAAAA,EAAAA,KAAAA,CAAM1E,IAAI,CAAA;;AAMlC;AAEA;;qGAIA,MAAMmF,eAAe,CAACT,KAAAA,GAAAA;AACpB,IAAA,OAAQA,MAAMhD,IAAI;AAChB;;;AAGC,QACD,KAAK,aAAA;AACH,YAAA,qBAAO/C,GAAA,CAAC2G,gBAAAA,EAAAA;AAAkB,gBAAA,GAAGZ;;AAC/B,QAAA;AACE,YAAA,qBAAO/F,GAAA,CAAC4G,aAAAA,EAAAA;AAAe,gBAAA,GAAGb;;AAC9B;AACF,CAAA;AAEA,MAAMY,mBAAmB,CAAC,EACxBxH,QAAQ,EACR2G,IAAI,EACJH,KAAK,EACLtE,IAAI,EACJmE,OAAO,EACPK,WAAW,EACXzE,QAAQ,EACqC,GAAA;IAC7C,MAAM,EAAE+C,KAAK,EAAEtB,KAAK,EAAEgE,QAAQ,EAAE,GAAGC,QAAAA,CAASzF,IAAAA,CAAAA;AAC5C,IAAA,MAAM,EAAE6D,IAAAA,EAAMC,cAAAA,GAAiB,EAAE,EAAE,GAAGC,yBAAAA,EAAAA;AAEtC,IAAA,MAAM2B,eAAe,CAAC5C,KAAAA,GAAAA;QACpB,IAAImB,KAAAA,CAAMC,OAAO,CAACJ,cAAAA,CAAAA,EAAiB;;YAEjC,MAAMO,MAAAA,GAASP,eAAe6B,IAAI,CAAC,CAACtB,MAAAA,GAAWA,MAAAA,CAAOzE,IAAI,KAAKkD,KAAAA,CAAAA;AAE/D0C,YAAAA,QAAAA,CAASxF,IAAAA,EAAM8C,KAAAA,CAAAA;;YAEf0C,QAAAA,CAAS,MAAA,EAAQnB,OAAOrE,IAAI,CAAA;QAC9B,CAAA,MAAO;AACLwF,YAAAA,QAAAA,CAASxF,IAAAA,EAAM8C,KAAAA,CAAAA;AACjB,QAAA;AACF,IAAA,CAAA;;IAGA,MAAM8C,cAAAA,GAAiBzB,QAAQwB,IAAI,CAAC,CAACE,MAAAA,GAAWA,MAAAA,CAAO/C,KAAK,KAAKA,KAAAA,CAAAA;IAEjE,qBACExE,IAAA,CAACwH,MAAMtH,IAAI,EAAA;QAACgD,KAAAA,EAAOA,KAAAA;QAAOiD,IAAAA,EAAMA,IAAAA;QAAMzE,IAAAA,EAAMA,IAAAA;QAAMD,QAAAA,EAAUA,QAAAA;;AAC1D,0BAAApB,GAAA,CAACmH,MAAMC,KAAK,EAAA;AAAEzB,gBAAAA,QAAAA,EAAAA;;0BACd3F,GAAA,CAACqH,QAAAA,EAAAA;gBACClI,QAAAA,EAAUA,QAAAA;gBACV0H,QAAAA,EAAUE,YAAAA;AACVO,gBAAAA,OAAAA,EAAS,IAAMP,YAAAA,CAAa,EAAA,CAAA;gBAC5BlB,WAAAA,EAAaA,WAAAA;gBACb1B,KAAAA,EAAOA,KAAAA;AACPoD,gBAAAA,SAAAA,EAAWN,cAAAA,EAAgBtB,KAAAA;gBAC3B6B,YAAAA,EAAc;oBAAEzE,IAAAA,EAAM,MAAA;oBAAQ0E,MAAAA,EAAQ;AAAW,iBAAA;AAEhDjC,gBAAAA,QAAAA,EAAAA,OAAAA,CAAQC,GAAG,CAAC,CAACyB,MAAAA,iBACZlH,GAAA,CAAC0H,cAAAA,EAAAA;AAAevD,wBAAAA,KAAAA,EAAO+C,OAAO/C,KAAK;AAChC+C,wBAAAA,QAAAA,EAAAA,MAAAA,CAAOvB;AADgCuB,qBAAAA,EAAAA,MAAAA,CAAO/C,KAAK,CAAA;;AAK1D,0BAAAnE,GAAA,CAACmH,MAAMQ,KAAK,EAAA,EAAA,CAAA;AACZ,0BAAA3H,GAAA,CAACmH,MAAMS,IAAI,EAAA,EAAA;;;AAGjB,CAAA;;;;"}
@@ -44,8 +44,8 @@ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
44
44
  function __variableDynamicImportRuntime1__(path) {
45
45
  switch (path) {
46
46
  case './translations/cs.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/cs.json.js')); });
47
+ case './translations/da.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/da.json.js')); });
47
48
  case './translations/de.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/de.json.js')); });
48
- case './translations/dk.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/dk.json.js')); });
49
49
  case './translations/en.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/en.json.js')); });
50
50
  case './translations/es.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/es.json.js')); });
51
51
  case './translations/fr.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/fr.json.js')); });
@@ -53,6 +53,7 @@ function __variableDynamicImportRuntime1__(path) {
53
53
  case './translations/nl.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/nl.json.js')); });
54
54
  case './translations/pl.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/pl.json.js')); });
55
55
  case './translations/ru.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/ru.json.js')); });
56
+ case './translations/sk.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/sk.json.js')); });
56
57
  case './translations/tr.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/tr.json.js')); });
57
58
  case './translations/uk.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/uk.json.js')); });
58
59
  case './translations/zh-Hans.json': return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('./translations/zh-Hans.json.js')); });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../admin/src/index.ts"],"sourcesContent":["import get from 'lodash/get';\nimport * as yup from 'yup';\n\nimport { CheckboxConfirmation } from './components/CheckboxConfirmation';\nimport {\n BulkLocalePublishAction,\n BulkLocaleUnpublishAction,\n DeleteLocaleAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n AITranslationStatusAction,\n} from './components/CMHeaderActions';\nimport {\n DeleteModalAdditionalInfo,\n PublishModalAdditionalInfo,\n UnpublishModalAdditionalInfo,\n} from './components/CMListViewModalsAdditionalInformation';\nimport { LocalePicker } from './components/LocalePicker';\nimport { PERMISSIONS } from './constants';\nimport { mutateEditViewHook } from './contentManagerHooks/editView';\nimport { addColumnToTableHook } from './contentManagerHooks/listView';\nimport { addLocaleToReleasesHook } from './contentReleasesHooks/releaseDetailsView';\nimport { extendCTBAttributeInitialDataMiddleware } from './middlewares/extendCTBAttributeInitialData';\nimport { extendCTBInitialDataMiddleware } from './middlewares/extendCTBInitialData';\nimport { localeMiddleware } from './middlewares/rbac-middleware';\nimport { pluginId } from './pluginId';\nimport { i18nApi } from './services/api';\nimport { LOCALIZED_FIELDS } from './utils/fields';\nimport { getTranslation } from './utils/getTranslation';\nimport { prefixPluginTranslations } from './utils/prefixPluginTranslations';\nimport { mutateCTBContentTypeSchema } from './utils/schemas';\n\nimport type { StrapiApp } from '@strapi/admin/strapi-admin';\nimport type {\n ContentManagerPlugin,\n DocumentActionComponent,\n HeaderActionComponent,\n} from '@strapi/content-manager/strapi-admin';\n\ntype ContentTypeBuilderFormsAPI = {\n addContentTypeSchemaMutation: (mutation: typeof mutateCTBContentTypeSchema) => void;\n components: {\n add: (component: { id: string; component: typeof CheckboxConfirmation }) => void;\n };\n extendContentType: (extension: {\n validator: () => Record<string, unknown>;\n form: {\n advanced: () => Array<Record<string, unknown>>;\n };\n }) => void;\n extendFields: (\n fields: typeof LOCALIZED_FIELDS,\n extension: {\n form: {\n advanced: (args: any) => Array<Record<string, unknown>>;\n };\n }\n ) => void;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n register(app: StrapiApp) {\n app.addMiddlewares([extendCTBAttributeInitialDataMiddleware, extendCTBInitialDataMiddleware]);\n app.addMiddlewares([() => i18nApi.middleware]);\n app.addReducers({\n [i18nApi.reducerPath]: i18nApi.reducer,\n });\n app.addRBACMiddleware([localeMiddleware]);\n app.registerPlugin({\n id: pluginId,\n name: pluginId,\n });\n },\n bootstrap(app: StrapiApp) {\n // // Hook that adds a column into the CM's LV table\n app.registerHook('Admin/CM/pages/ListView/inject-column-in-table', addColumnToTableHook);\n app.registerHook('Admin/CM/pages/EditView/mutate-edit-view-layout', mutateEditViewHook);\n // Hooks that checks if the locale is present in the release\n app.registerHook(\n 'ContentReleases/pages/ReleaseDetails/add-locale-in-releases',\n addLocaleToReleasesHook\n );\n\n // Add the settings link\n app.addSettingsLink('global', {\n intlLabel: {\n id: getTranslation('plugin.name'),\n defaultMessage: 'Internationalization',\n },\n id: 'internationalization',\n to: 'internationalization',\n Component: () =>\n import('./pages/SettingsPage').then((mod) => ({ default: mod.ProtectedSettingsPage })),\n permissions: PERMISSIONS.accessMain,\n });\n\n const contentManager = app.getPlugin('content-manager');\n const contentManagerApis = contentManager.apis as ContentManagerPlugin['config']['apis'];\n\n contentManagerApis.addDocumentHeaderAction([\n AITranslationStatusAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n ] as HeaderActionComponent[]);\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n const indexOfDeleteAction = actions.findIndex((action) => action.type === 'delete');\n actions.splice(indexOfDeleteAction, 0, DeleteLocaleAction);\n return actions;\n });\n\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n // When enabled the bulk locale publish action should be the first action\n // in 'More Document Actions' and therefore the third action in the array\n actions.splice(2, 0, BulkLocalePublishAction);\n actions.splice(5, 0, BulkLocaleUnpublishAction);\n return actions;\n });\n\n contentManager.injectComponent('listView', 'actions', {\n name: 'i18n-locale-filter',\n Component: LocalePicker,\n });\n\n contentManager.injectComponent('listView', 'publishModalAdditionalInfos', {\n name: 'i18n-publish-bullets-in-modal',\n Component: PublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'unpublishModalAdditionalInfos', {\n name: 'i18n-unpublish-bullets-in-modal',\n Component: UnpublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'deleteModalAdditionalInfos', {\n name: 'i18n-delete-bullets-in-modal',\n Component: DeleteModalAdditionalInfo,\n });\n\n const ctbPlugin = app.getPlugin('content-type-builder');\n\n if (ctbPlugin) {\n const ctbFormsAPI = ctbPlugin.apis.forms as ContentTypeBuilderFormsAPI;\n ctbFormsAPI.addContentTypeSchemaMutation(mutateCTBContentTypeSchema);\n ctbFormsAPI.components.add({ id: 'checkboxConfirmation', component: CheckboxConfirmation });\n\n ctbFormsAPI.extendContentType({\n validator: () => ({\n i18n: yup.object().shape({\n localized: yup.bool(),\n }),\n }),\n form: {\n advanced() {\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-content-type'),\n defaultMessage: 'Allows translating an entry into different languages',\n },\n type: 'checkboxConfirmation',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-content-type'),\n defaultMessage: 'Localization',\n },\n },\n ];\n },\n },\n });\n\n ctbFormsAPI.extendFields(LOCALIZED_FIELDS, {\n form: {\n advanced({ contentTypeSchema, forTarget, type, step }: any) {\n if (forTarget !== 'contentType') {\n return [];\n }\n\n const hasI18nEnabled = get(\n contentTypeSchema,\n ['pluginOptions', 'i18n', 'localized'],\n false\n );\n\n if (!hasI18nEnabled) {\n return [];\n }\n\n if (type === 'component' && step === '1') {\n return [];\n }\n\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-field'),\n defaultMessage: 'The field can have different values in each locale',\n },\n type: 'checkbox',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-field'),\n defaultMessage: 'Enable localization for this field',\n },\n },\n ];\n },\n },\n });\n }\n },\n async registerTrads({ locales }: { locales: string[] }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["register","app","addMiddlewares","extendCTBAttributeInitialDataMiddleware","extendCTBInitialDataMiddleware","i18nApi","middleware","addReducers","reducerPath","reducer","addRBACMiddleware","localeMiddleware","registerPlugin","id","pluginId","name","bootstrap","registerHook","addColumnToTableHook","mutateEditViewHook","addLocaleToReleasesHook","addSettingsLink","intlLabel","getTranslation","defaultMessage","to","Component","then","mod","default","ProtectedSettingsPage","permissions","PERMISSIONS","accessMain","contentManager","getPlugin","contentManagerApis","apis","addDocumentHeaderAction","AITranslationStatusAction","LocalePickerAction","FillFromAnotherLocaleAction","addDocumentAction","actions","indexOfDeleteAction","findIndex","action","type","splice","DeleteLocaleAction","BulkLocalePublishAction","BulkLocaleUnpublishAction","injectComponent","LocalePicker","PublishModalAdditionalInfo","UnpublishModalAdditionalInfo","DeleteModalAdditionalInfo","ctbPlugin","ctbFormsAPI","forms","addContentTypeSchemaMutation","mutateCTBContentTypeSchema","components","add","component","CheckboxConfirmation","extendContentType","validator","i18n","yup","object","shape","localized","bool","form","advanced","description","extendFields","LOCALIZED_FIELDS","contentTypeSchema","forTarget","step","hasI18nEnabled","get","registerTrads","locales","importedTrads","Promise","all","map","locale","data","prefixPluginTranslations","catch","resolve"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../admin/src/index.ts"],"sourcesContent":["import get from 'lodash/get';\nimport * as yup from 'yup';\n\nimport { CheckboxConfirmation } from './components/CheckboxConfirmation';\nimport {\n BulkLocalePublishAction,\n BulkLocaleUnpublishAction,\n DeleteLocaleAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n AITranslationStatusAction,\n} from './components/CMHeaderActions';\nimport {\n DeleteModalAdditionalInfo,\n PublishModalAdditionalInfo,\n UnpublishModalAdditionalInfo,\n} from './components/CMListViewModalsAdditionalInformation';\nimport { LocalePicker } from './components/LocalePicker';\nimport { PERMISSIONS } from './constants';\nimport { mutateEditViewHook } from './contentManagerHooks/editView';\nimport { addColumnToTableHook } from './contentManagerHooks/listView';\nimport { addLocaleToReleasesHook } from './contentReleasesHooks/releaseDetailsView';\nimport { extendCTBAttributeInitialDataMiddleware } from './middlewares/extendCTBAttributeInitialData';\nimport { extendCTBInitialDataMiddleware } from './middlewares/extendCTBInitialData';\nimport { localeMiddleware } from './middlewares/rbac-middleware';\nimport { pluginId } from './pluginId';\nimport { i18nApi } from './services/api';\nimport { LOCALIZED_FIELDS } from './utils/fields';\nimport { getTranslation } from './utils/getTranslation';\nimport { prefixPluginTranslations } from './utils/prefixPluginTranslations';\nimport { mutateCTBContentTypeSchema } from './utils/schemas';\n\nimport type { StrapiApp } from '@strapi/admin/strapi-admin';\nimport type {\n ContentManagerPlugin,\n DocumentActionComponent,\n HeaderActionComponent,\n} from '@strapi/content-manager/strapi-admin';\n\ntype ContentTypeBuilderFormsAPI = {\n addContentTypeSchemaMutation: (mutation: typeof mutateCTBContentTypeSchema) => void;\n components: {\n add: (component: { id: string; component: typeof CheckboxConfirmation }) => void;\n };\n extendContentType: (extension: {\n validator: () => Record<string, unknown>;\n form: {\n advanced: () => Array<Record<string, unknown>>;\n };\n }) => void;\n extendFields: (\n fields: typeof LOCALIZED_FIELDS,\n extension: {\n form: {\n advanced: (args: any) => Array<Record<string, unknown>>;\n };\n }\n ) => void;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n register(app: StrapiApp) {\n app.addMiddlewares([extendCTBAttributeInitialDataMiddleware, extendCTBInitialDataMiddleware]);\n app.addMiddlewares([() => i18nApi.middleware]);\n app.addReducers({\n [i18nApi.reducerPath]: i18nApi.reducer,\n });\n app.addRBACMiddleware([localeMiddleware]);\n app.registerPlugin({\n id: pluginId,\n name: pluginId,\n });\n },\n bootstrap(app: StrapiApp) {\n // // Hook that adds a column into the CM's LV table\n app.registerHook('Admin/CM/pages/ListView/inject-column-in-table', addColumnToTableHook);\n app.registerHook('Admin/CM/pages/EditView/mutate-edit-view-layout', mutateEditViewHook);\n // Hooks that checks if the locale is present in the release\n app.registerHook(\n 'ContentReleases/pages/ReleaseDetails/add-locale-in-releases',\n addLocaleToReleasesHook\n );\n\n // Add the settings link\n app.addSettingsLink('global', {\n intlLabel: {\n id: getTranslation('plugin.name'),\n defaultMessage: 'Internationalization',\n },\n id: 'internationalization',\n to: 'internationalization',\n Component: () =>\n import('./pages/SettingsPage').then((mod) => ({ default: mod.ProtectedSettingsPage })),\n permissions: PERMISSIONS.accessMain,\n });\n\n const contentManager = app.getPlugin('content-manager');\n const contentManagerApis = contentManager.apis as ContentManagerPlugin['config']['apis'];\n\n contentManagerApis.addDocumentHeaderAction([\n AITranslationStatusAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n ] as HeaderActionComponent[]);\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n const indexOfDeleteAction = actions.findIndex((action) => action.type === 'delete');\n actions.splice(indexOfDeleteAction, 0, DeleteLocaleAction);\n return actions;\n });\n\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n // When enabled the bulk locale publish action should be the first action\n // in 'More Document Actions' and therefore the third action in the array\n actions.splice(2, 0, BulkLocalePublishAction);\n actions.splice(5, 0, BulkLocaleUnpublishAction);\n return actions;\n });\n\n contentManager.injectComponent('listView', 'actions', {\n name: 'i18n-locale-filter',\n Component: LocalePicker,\n });\n\n contentManager.injectComponent('listView', 'publishModalAdditionalInfos', {\n name: 'i18n-publish-bullets-in-modal',\n Component: PublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'unpublishModalAdditionalInfos', {\n name: 'i18n-unpublish-bullets-in-modal',\n Component: UnpublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'deleteModalAdditionalInfos', {\n name: 'i18n-delete-bullets-in-modal',\n Component: DeleteModalAdditionalInfo,\n });\n\n const ctbPlugin = app.getPlugin('content-type-builder');\n\n if (ctbPlugin) {\n const ctbFormsAPI = ctbPlugin.apis.forms as ContentTypeBuilderFormsAPI;\n ctbFormsAPI.addContentTypeSchemaMutation(mutateCTBContentTypeSchema);\n ctbFormsAPI.components.add({ id: 'checkboxConfirmation', component: CheckboxConfirmation });\n\n ctbFormsAPI.extendContentType({\n validator: () => ({\n i18n: yup.object().shape({\n localized: yup.bool(),\n }),\n }),\n form: {\n advanced() {\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-content-type'),\n defaultMessage: 'Allows translating an entry into different languages',\n },\n type: 'checkboxConfirmation',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-content-type'),\n defaultMessage: 'Localization',\n },\n },\n ];\n },\n },\n });\n\n ctbFormsAPI.extendFields(LOCALIZED_FIELDS, {\n form: {\n advanced({ contentTypeSchema, forTarget, type, step }: any) {\n if (forTarget !== 'contentType') {\n return [];\n }\n\n const hasI18nEnabled = get(\n contentTypeSchema,\n ['pluginOptions', 'i18n', 'localized'],\n false\n );\n\n if (!hasI18nEnabled) {\n return [];\n }\n\n if (type === 'component' && step === '1') {\n return [];\n }\n\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-field'),\n defaultMessage: 'The field can have different values in each locale',\n },\n type: 'checkbox',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-field'),\n defaultMessage: 'Enable localization for this field',\n },\n },\n ];\n },\n },\n });\n }\n },\n async registerTrads({ locales }: { locales: string[] }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["register","app","addMiddlewares","extendCTBAttributeInitialDataMiddleware","extendCTBInitialDataMiddleware","i18nApi","middleware","addReducers","reducerPath","reducer","addRBACMiddleware","localeMiddleware","registerPlugin","id","pluginId","name","bootstrap","registerHook","addColumnToTableHook","mutateEditViewHook","addLocaleToReleasesHook","addSettingsLink","intlLabel","getTranslation","defaultMessage","to","Component","then","mod","default","ProtectedSettingsPage","permissions","PERMISSIONS","accessMain","contentManager","getPlugin","contentManagerApis","apis","addDocumentHeaderAction","AITranslationStatusAction","LocalePickerAction","FillFromAnotherLocaleAction","addDocumentAction","actions","indexOfDeleteAction","findIndex","action","type","splice","DeleteLocaleAction","BulkLocalePublishAction","BulkLocaleUnpublishAction","injectComponent","LocalePicker","PublishModalAdditionalInfo","UnpublishModalAdditionalInfo","DeleteModalAdditionalInfo","ctbPlugin","ctbFormsAPI","forms","addContentTypeSchemaMutation","mutateCTBContentTypeSchema","components","add","component","CheckboxConfirmation","extendContentType","validator","i18n","yup","object","shape","localized","bool","form","advanced","description","extendFields","LOCALIZED_FIELDS","contentTypeSchema","forTarget","step","hasI18nEnabled","get","registerTrads","locales","importedTrads","Promise","all","map","locale","data","prefixPluginTranslations","catch","resolve"],"mappings":"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"}
@@ -21,8 +21,8 @@ import { mutateCTBContentTypeSchema } from './utils/schemas.mjs';
21
21
  function __variableDynamicImportRuntime1__(path) {
22
22
  switch (path) {
23
23
  case './translations/cs.json': return import('./translations/cs.json.mjs');
24
+ case './translations/da.json': return import('./translations/da.json.mjs');
24
25
  case './translations/de.json': return import('./translations/de.json.mjs');
25
- case './translations/dk.json': return import('./translations/dk.json.mjs');
26
26
  case './translations/en.json': return import('./translations/en.json.mjs');
27
27
  case './translations/es.json': return import('./translations/es.json.mjs');
28
28
  case './translations/fr.json': return import('./translations/fr.json.mjs');
@@ -30,6 +30,7 @@ function __variableDynamicImportRuntime1__(path) {
30
30
  case './translations/nl.json': return import('./translations/nl.json.mjs');
31
31
  case './translations/pl.json': return import('./translations/pl.json.mjs');
32
32
  case './translations/ru.json': return import('./translations/ru.json.mjs');
33
+ case './translations/sk.json': return import('./translations/sk.json.mjs');
33
34
  case './translations/tr.json': return import('./translations/tr.json.mjs');
34
35
  case './translations/uk.json': return import('./translations/uk.json.mjs');
35
36
  case './translations/zh-Hans.json': return import('./translations/zh-Hans.json.mjs');
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../admin/src/index.ts"],"sourcesContent":["import get from 'lodash/get';\nimport * as yup from 'yup';\n\nimport { CheckboxConfirmation } from './components/CheckboxConfirmation';\nimport {\n BulkLocalePublishAction,\n BulkLocaleUnpublishAction,\n DeleteLocaleAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n AITranslationStatusAction,\n} from './components/CMHeaderActions';\nimport {\n DeleteModalAdditionalInfo,\n PublishModalAdditionalInfo,\n UnpublishModalAdditionalInfo,\n} from './components/CMListViewModalsAdditionalInformation';\nimport { LocalePicker } from './components/LocalePicker';\nimport { PERMISSIONS } from './constants';\nimport { mutateEditViewHook } from './contentManagerHooks/editView';\nimport { addColumnToTableHook } from './contentManagerHooks/listView';\nimport { addLocaleToReleasesHook } from './contentReleasesHooks/releaseDetailsView';\nimport { extendCTBAttributeInitialDataMiddleware } from './middlewares/extendCTBAttributeInitialData';\nimport { extendCTBInitialDataMiddleware } from './middlewares/extendCTBInitialData';\nimport { localeMiddleware } from './middlewares/rbac-middleware';\nimport { pluginId } from './pluginId';\nimport { i18nApi } from './services/api';\nimport { LOCALIZED_FIELDS } from './utils/fields';\nimport { getTranslation } from './utils/getTranslation';\nimport { prefixPluginTranslations } from './utils/prefixPluginTranslations';\nimport { mutateCTBContentTypeSchema } from './utils/schemas';\n\nimport type { StrapiApp } from '@strapi/admin/strapi-admin';\nimport type {\n ContentManagerPlugin,\n DocumentActionComponent,\n HeaderActionComponent,\n} from '@strapi/content-manager/strapi-admin';\n\ntype ContentTypeBuilderFormsAPI = {\n addContentTypeSchemaMutation: (mutation: typeof mutateCTBContentTypeSchema) => void;\n components: {\n add: (component: { id: string; component: typeof CheckboxConfirmation }) => void;\n };\n extendContentType: (extension: {\n validator: () => Record<string, unknown>;\n form: {\n advanced: () => Array<Record<string, unknown>>;\n };\n }) => void;\n extendFields: (\n fields: typeof LOCALIZED_FIELDS,\n extension: {\n form: {\n advanced: (args: any) => Array<Record<string, unknown>>;\n };\n }\n ) => void;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n register(app: StrapiApp) {\n app.addMiddlewares([extendCTBAttributeInitialDataMiddleware, extendCTBInitialDataMiddleware]);\n app.addMiddlewares([() => i18nApi.middleware]);\n app.addReducers({\n [i18nApi.reducerPath]: i18nApi.reducer,\n });\n app.addRBACMiddleware([localeMiddleware]);\n app.registerPlugin({\n id: pluginId,\n name: pluginId,\n });\n },\n bootstrap(app: StrapiApp) {\n // // Hook that adds a column into the CM's LV table\n app.registerHook('Admin/CM/pages/ListView/inject-column-in-table', addColumnToTableHook);\n app.registerHook('Admin/CM/pages/EditView/mutate-edit-view-layout', mutateEditViewHook);\n // Hooks that checks if the locale is present in the release\n app.registerHook(\n 'ContentReleases/pages/ReleaseDetails/add-locale-in-releases',\n addLocaleToReleasesHook\n );\n\n // Add the settings link\n app.addSettingsLink('global', {\n intlLabel: {\n id: getTranslation('plugin.name'),\n defaultMessage: 'Internationalization',\n },\n id: 'internationalization',\n to: 'internationalization',\n Component: () =>\n import('./pages/SettingsPage').then((mod) => ({ default: mod.ProtectedSettingsPage })),\n permissions: PERMISSIONS.accessMain,\n });\n\n const contentManager = app.getPlugin('content-manager');\n const contentManagerApis = contentManager.apis as ContentManagerPlugin['config']['apis'];\n\n contentManagerApis.addDocumentHeaderAction([\n AITranslationStatusAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n ] as HeaderActionComponent[]);\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n const indexOfDeleteAction = actions.findIndex((action) => action.type === 'delete');\n actions.splice(indexOfDeleteAction, 0, DeleteLocaleAction);\n return actions;\n });\n\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n // When enabled the bulk locale publish action should be the first action\n // in 'More Document Actions' and therefore the third action in the array\n actions.splice(2, 0, BulkLocalePublishAction);\n actions.splice(5, 0, BulkLocaleUnpublishAction);\n return actions;\n });\n\n contentManager.injectComponent('listView', 'actions', {\n name: 'i18n-locale-filter',\n Component: LocalePicker,\n });\n\n contentManager.injectComponent('listView', 'publishModalAdditionalInfos', {\n name: 'i18n-publish-bullets-in-modal',\n Component: PublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'unpublishModalAdditionalInfos', {\n name: 'i18n-unpublish-bullets-in-modal',\n Component: UnpublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'deleteModalAdditionalInfos', {\n name: 'i18n-delete-bullets-in-modal',\n Component: DeleteModalAdditionalInfo,\n });\n\n const ctbPlugin = app.getPlugin('content-type-builder');\n\n if (ctbPlugin) {\n const ctbFormsAPI = ctbPlugin.apis.forms as ContentTypeBuilderFormsAPI;\n ctbFormsAPI.addContentTypeSchemaMutation(mutateCTBContentTypeSchema);\n ctbFormsAPI.components.add({ id: 'checkboxConfirmation', component: CheckboxConfirmation });\n\n ctbFormsAPI.extendContentType({\n validator: () => ({\n i18n: yup.object().shape({\n localized: yup.bool(),\n }),\n }),\n form: {\n advanced() {\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-content-type'),\n defaultMessage: 'Allows translating an entry into different languages',\n },\n type: 'checkboxConfirmation',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-content-type'),\n defaultMessage: 'Localization',\n },\n },\n ];\n },\n },\n });\n\n ctbFormsAPI.extendFields(LOCALIZED_FIELDS, {\n form: {\n advanced({ contentTypeSchema, forTarget, type, step }: any) {\n if (forTarget !== 'contentType') {\n return [];\n }\n\n const hasI18nEnabled = get(\n contentTypeSchema,\n ['pluginOptions', 'i18n', 'localized'],\n false\n );\n\n if (!hasI18nEnabled) {\n return [];\n }\n\n if (type === 'component' && step === '1') {\n return [];\n }\n\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-field'),\n defaultMessage: 'The field can have different values in each locale',\n },\n type: 'checkbox',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-field'),\n defaultMessage: 'Enable localization for this field',\n },\n },\n ];\n },\n },\n });\n }\n },\n async registerTrads({ locales }: { locales: string[] }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["register","app","addMiddlewares","extendCTBAttributeInitialDataMiddleware","extendCTBInitialDataMiddleware","i18nApi","middleware","addReducers","reducerPath","reducer","addRBACMiddleware","localeMiddleware","registerPlugin","id","pluginId","name","bootstrap","registerHook","addColumnToTableHook","mutateEditViewHook","addLocaleToReleasesHook","addSettingsLink","intlLabel","getTranslation","defaultMessage","to","Component","then","mod","default","ProtectedSettingsPage","permissions","PERMISSIONS","accessMain","contentManager","getPlugin","contentManagerApis","apis","addDocumentHeaderAction","AITranslationStatusAction","LocalePickerAction","FillFromAnotherLocaleAction","addDocumentAction","actions","indexOfDeleteAction","findIndex","action","type","splice","DeleteLocaleAction","BulkLocalePublishAction","BulkLocaleUnpublishAction","injectComponent","LocalePicker","PublishModalAdditionalInfo","UnpublishModalAdditionalInfo","DeleteModalAdditionalInfo","ctbPlugin","ctbFormsAPI","forms","addContentTypeSchemaMutation","mutateCTBContentTypeSchema","components","add","component","CheckboxConfirmation","extendContentType","validator","i18n","yup","object","shape","localized","bool","form","advanced","description","extendFields","LOCALIZED_FIELDS","contentTypeSchema","forTarget","step","hasI18nEnabled","get","registerTrads","locales","importedTrads","Promise","all","map","locale","data","prefixPluginTranslations","catch","resolve"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../admin/src/index.ts"],"sourcesContent":["import get from 'lodash/get';\nimport * as yup from 'yup';\n\nimport { CheckboxConfirmation } from './components/CheckboxConfirmation';\nimport {\n BulkLocalePublishAction,\n BulkLocaleUnpublishAction,\n DeleteLocaleAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n AITranslationStatusAction,\n} from './components/CMHeaderActions';\nimport {\n DeleteModalAdditionalInfo,\n PublishModalAdditionalInfo,\n UnpublishModalAdditionalInfo,\n} from './components/CMListViewModalsAdditionalInformation';\nimport { LocalePicker } from './components/LocalePicker';\nimport { PERMISSIONS } from './constants';\nimport { mutateEditViewHook } from './contentManagerHooks/editView';\nimport { addColumnToTableHook } from './contentManagerHooks/listView';\nimport { addLocaleToReleasesHook } from './contentReleasesHooks/releaseDetailsView';\nimport { extendCTBAttributeInitialDataMiddleware } from './middlewares/extendCTBAttributeInitialData';\nimport { extendCTBInitialDataMiddleware } from './middlewares/extendCTBInitialData';\nimport { localeMiddleware } from './middlewares/rbac-middleware';\nimport { pluginId } from './pluginId';\nimport { i18nApi } from './services/api';\nimport { LOCALIZED_FIELDS } from './utils/fields';\nimport { getTranslation } from './utils/getTranslation';\nimport { prefixPluginTranslations } from './utils/prefixPluginTranslations';\nimport { mutateCTBContentTypeSchema } from './utils/schemas';\n\nimport type { StrapiApp } from '@strapi/admin/strapi-admin';\nimport type {\n ContentManagerPlugin,\n DocumentActionComponent,\n HeaderActionComponent,\n} from '@strapi/content-manager/strapi-admin';\n\ntype ContentTypeBuilderFormsAPI = {\n addContentTypeSchemaMutation: (mutation: typeof mutateCTBContentTypeSchema) => void;\n components: {\n add: (component: { id: string; component: typeof CheckboxConfirmation }) => void;\n };\n extendContentType: (extension: {\n validator: () => Record<string, unknown>;\n form: {\n advanced: () => Array<Record<string, unknown>>;\n };\n }) => void;\n extendFields: (\n fields: typeof LOCALIZED_FIELDS,\n extension: {\n form: {\n advanced: (args: any) => Array<Record<string, unknown>>;\n };\n }\n ) => void;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n register(app: StrapiApp) {\n app.addMiddlewares([extendCTBAttributeInitialDataMiddleware, extendCTBInitialDataMiddleware]);\n app.addMiddlewares([() => i18nApi.middleware]);\n app.addReducers({\n [i18nApi.reducerPath]: i18nApi.reducer,\n });\n app.addRBACMiddleware([localeMiddleware]);\n app.registerPlugin({\n id: pluginId,\n name: pluginId,\n });\n },\n bootstrap(app: StrapiApp) {\n // // Hook that adds a column into the CM's LV table\n app.registerHook('Admin/CM/pages/ListView/inject-column-in-table', addColumnToTableHook);\n app.registerHook('Admin/CM/pages/EditView/mutate-edit-view-layout', mutateEditViewHook);\n // Hooks that checks if the locale is present in the release\n app.registerHook(\n 'ContentReleases/pages/ReleaseDetails/add-locale-in-releases',\n addLocaleToReleasesHook\n );\n\n // Add the settings link\n app.addSettingsLink('global', {\n intlLabel: {\n id: getTranslation('plugin.name'),\n defaultMessage: 'Internationalization',\n },\n id: 'internationalization',\n to: 'internationalization',\n Component: () =>\n import('./pages/SettingsPage').then((mod) => ({ default: mod.ProtectedSettingsPage })),\n permissions: PERMISSIONS.accessMain,\n });\n\n const contentManager = app.getPlugin('content-manager');\n const contentManagerApis = contentManager.apis as ContentManagerPlugin['config']['apis'];\n\n contentManagerApis.addDocumentHeaderAction([\n AITranslationStatusAction,\n LocalePickerAction,\n FillFromAnotherLocaleAction,\n ] as HeaderActionComponent[]);\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n const indexOfDeleteAction = actions.findIndex((action) => action.type === 'delete');\n actions.splice(indexOfDeleteAction, 0, DeleteLocaleAction);\n return actions;\n });\n\n contentManagerApis.addDocumentAction((actions: DocumentActionComponent[]) => {\n // When enabled the bulk locale publish action should be the first action\n // in 'More Document Actions' and therefore the third action in the array\n actions.splice(2, 0, BulkLocalePublishAction);\n actions.splice(5, 0, BulkLocaleUnpublishAction);\n return actions;\n });\n\n contentManager.injectComponent('listView', 'actions', {\n name: 'i18n-locale-filter',\n Component: LocalePicker,\n });\n\n contentManager.injectComponent('listView', 'publishModalAdditionalInfos', {\n name: 'i18n-publish-bullets-in-modal',\n Component: PublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'unpublishModalAdditionalInfos', {\n name: 'i18n-unpublish-bullets-in-modal',\n Component: UnpublishModalAdditionalInfo,\n });\n\n contentManager.injectComponent('listView', 'deleteModalAdditionalInfos', {\n name: 'i18n-delete-bullets-in-modal',\n Component: DeleteModalAdditionalInfo,\n });\n\n const ctbPlugin = app.getPlugin('content-type-builder');\n\n if (ctbPlugin) {\n const ctbFormsAPI = ctbPlugin.apis.forms as ContentTypeBuilderFormsAPI;\n ctbFormsAPI.addContentTypeSchemaMutation(mutateCTBContentTypeSchema);\n ctbFormsAPI.components.add({ id: 'checkboxConfirmation', component: CheckboxConfirmation });\n\n ctbFormsAPI.extendContentType({\n validator: () => ({\n i18n: yup.object().shape({\n localized: yup.bool(),\n }),\n }),\n form: {\n advanced() {\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-content-type'),\n defaultMessage: 'Allows translating an entry into different languages',\n },\n type: 'checkboxConfirmation',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-content-type'),\n defaultMessage: 'Localization',\n },\n },\n ];\n },\n },\n });\n\n ctbFormsAPI.extendFields(LOCALIZED_FIELDS, {\n form: {\n advanced({ contentTypeSchema, forTarget, type, step }: any) {\n if (forTarget !== 'contentType') {\n return [];\n }\n\n const hasI18nEnabled = get(\n contentTypeSchema,\n ['pluginOptions', 'i18n', 'localized'],\n false\n );\n\n if (!hasI18nEnabled) {\n return [];\n }\n\n if (type === 'component' && step === '1') {\n return [];\n }\n\n return [\n {\n name: 'pluginOptions.i18n.localized',\n description: {\n id: getTranslation('plugin.schema.i18n.localized.description-field'),\n defaultMessage: 'The field can have different values in each locale',\n },\n type: 'checkbox',\n intlLabel: {\n id: getTranslation('plugin.schema.i18n.localized.label-field'),\n defaultMessage: 'Enable localization for this field',\n },\n },\n ];\n },\n },\n });\n }\n },\n async registerTrads({ locales }: { locales: string[] }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["register","app","addMiddlewares","extendCTBAttributeInitialDataMiddleware","extendCTBInitialDataMiddleware","i18nApi","middleware","addReducers","reducerPath","reducer","addRBACMiddleware","localeMiddleware","registerPlugin","id","pluginId","name","bootstrap","registerHook","addColumnToTableHook","mutateEditViewHook","addLocaleToReleasesHook","addSettingsLink","intlLabel","getTranslation","defaultMessage","to","Component","then","mod","default","ProtectedSettingsPage","permissions","PERMISSIONS","accessMain","contentManager","getPlugin","contentManagerApis","apis","addDocumentHeaderAction","AITranslationStatusAction","LocalePickerAction","FillFromAnotherLocaleAction","addDocumentAction","actions","indexOfDeleteAction","findIndex","action","type","splice","DeleteLocaleAction","BulkLocalePublishAction","BulkLocaleUnpublishAction","injectComponent","LocalePicker","PublishModalAdditionalInfo","UnpublishModalAdditionalInfo","DeleteModalAdditionalInfo","ctbPlugin","ctbFormsAPI","forms","addContentTypeSchemaMutation","mutateCTBContentTypeSchema","components","add","component","CheckboxConfirmation","extendContentType","validator","i18n","yup","object","shape","localized","bool","form","advanced","description","extendFields","LOCALIZED_FIELDS","contentTypeSchema","forTarget","step","hasI18nEnabled","get","registerTrads","locales","importedTrads","Promise","all","map","locale","data","prefixPluginTranslations","catch","resolve"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var dk = {
3
+ var da = {
4
4
  "CMEditViewCopyLocale.copy-failure": "Kopiering af sprogvariant mislykkedes",
5
5
  "CMEditViewCopyLocale.copy-success": "Sprogvariant kopieret",
6
6
  "CMEditViewCopyLocale.copy-text": "Udfyld fra en anden sprogvariant",
@@ -27,10 +27,7 @@ var dk = {
27
27
  "Settings.locales.modal.advanced.setAsDefault.hint": "Én standard sprogvariant er påkrævet, skift den ved at vælge en anden",
28
28
  "Settings.locales.modal.advanced.settings": "Indstillinger",
29
29
  "Settings.locales.modal.base": "Standardindstillinger",
30
- "Settings.locales.modal.create.alreadyExist": "Denne sprogvariant findes allerede",
31
- "Settings.locales.modal.create.defaultLocales.loading": "Henter tilgængelige sprogvarianter...",
32
30
  "Settings.locales.modal.create.success": "Sprogvariant tilføjet",
33
- "Settings.locales.modal.create.tab.label": "Navigerer mellem i18n standard indstillinger og avancerede indstillinger",
34
31
  "Settings.locales.modal.delete.confirm": "Ja, slet",
35
32
  "Settings.locales.modal.delete.message": "Sletning af denne sprogvariant medfører sletning af alt relateret indhold. Hvis du ønsker at beholde noget indhold, skift det til en anden sprogvariant først.",
36
33
  "Settings.locales.modal.delete.secondMessage": "Ønsker du at slette denne sprogvariant?",
@@ -40,10 +37,9 @@ var dk = {
40
37
  "Settings.locales.modal.edit.success": "Sprogvariant redigeret",
41
38
  "Settings.locales.modal.edit.tab.label": "Navigerer mellem i18n standardindstillinger og avancerede indstillinger",
42
39
  "Settings.locales.modal.create.name.label": "Sprogvariantens visningsnavn",
43
- "Settings.locales.modal.create.name.label.description": "Sprogvariant bliver vist under dette navn i admin panelet",
40
+ "Settings.locales.modal.create.name.description": "Sprogvariant bliver vist under dette navn i admin panelet",
44
41
  "Settings.locales.modal.create.name.label.error": "Sprogvariantens visningsnavn skal være mindre end 50 tegn.",
45
42
  "Settings.locales.modal.locales.label": "Sprogvarianter",
46
- "Settings.locales.modal.locales.loaded": "Sprogvarianterne er hentet.",
47
43
  "Settings.locales.modal.title": "Konfigurationer",
48
44
  "Settings.locales.row.default-locale": "Standard sprogvariant",
49
45
  "Settings.locales.row.displayName": "Visningsnavn",
@@ -62,5 +58,5 @@ var dk = {
62
58
  "plugin.schema.i18n.localized.label-field": "Aktivér sprogvarianter for dette felt"
63
59
  };
64
60
 
65
- module.exports = dk;
66
- //# sourceMappingURL=dk.json.js.map
61
+ module.exports = da;
62
+ //# sourceMappingURL=da.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"da.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- var dk = {
1
+ var da = {
2
2
  "CMEditViewCopyLocale.copy-failure": "Kopiering af sprogvariant mislykkedes",
3
3
  "CMEditViewCopyLocale.copy-success": "Sprogvariant kopieret",
4
4
  "CMEditViewCopyLocale.copy-text": "Udfyld fra en anden sprogvariant",
@@ -25,10 +25,7 @@ var dk = {
25
25
  "Settings.locales.modal.advanced.setAsDefault.hint": "Én standard sprogvariant er påkrævet, skift den ved at vælge en anden",
26
26
  "Settings.locales.modal.advanced.settings": "Indstillinger",
27
27
  "Settings.locales.modal.base": "Standardindstillinger",
28
- "Settings.locales.modal.create.alreadyExist": "Denne sprogvariant findes allerede",
29
- "Settings.locales.modal.create.defaultLocales.loading": "Henter tilgængelige sprogvarianter...",
30
28
  "Settings.locales.modal.create.success": "Sprogvariant tilføjet",
31
- "Settings.locales.modal.create.tab.label": "Navigerer mellem i18n standard indstillinger og avancerede indstillinger",
32
29
  "Settings.locales.modal.delete.confirm": "Ja, slet",
33
30
  "Settings.locales.modal.delete.message": "Sletning af denne sprogvariant medfører sletning af alt relateret indhold. Hvis du ønsker at beholde noget indhold, skift det til en anden sprogvariant først.",
34
31
  "Settings.locales.modal.delete.secondMessage": "Ønsker du at slette denne sprogvariant?",
@@ -38,10 +35,9 @@ var dk = {
38
35
  "Settings.locales.modal.edit.success": "Sprogvariant redigeret",
39
36
  "Settings.locales.modal.edit.tab.label": "Navigerer mellem i18n standardindstillinger og avancerede indstillinger",
40
37
  "Settings.locales.modal.create.name.label": "Sprogvariantens visningsnavn",
41
- "Settings.locales.modal.create.name.label.description": "Sprogvariant bliver vist under dette navn i admin panelet",
38
+ "Settings.locales.modal.create.name.description": "Sprogvariant bliver vist under dette navn i admin panelet",
42
39
  "Settings.locales.modal.create.name.label.error": "Sprogvariantens visningsnavn skal være mindre end 50 tegn.",
43
40
  "Settings.locales.modal.locales.label": "Sprogvarianter",
44
- "Settings.locales.modal.locales.loaded": "Sprogvarianterne er hentet.",
45
41
  "Settings.locales.modal.title": "Konfigurationer",
46
42
  "Settings.locales.row.default-locale": "Standard sprogvariant",
47
43
  "Settings.locales.row.displayName": "Visningsnavn",
@@ -60,5 +56,5 @@ var dk = {
60
56
  "plugin.schema.i18n.localized.label-field": "Aktivér sprogvarianter for dette felt"
61
57
  };
62
58
 
63
- export { dk as default };
64
- //# sourceMappingURL=dk.json.mjs.map
59
+ export { da as default };
60
+ //# sourceMappingURL=da.json.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"da.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -84,7 +84,8 @@ var en = {
84
84
  "plugin.schema.i18n.localized.description-content-type": "Allows translating an entry into different languages",
85
85
  "plugin.schema.i18n.localized.description-field": "The field can have different values in each language",
86
86
  "plugin.schema.i18n.localized.label-content-type": "Internationalization",
87
- "plugin.schema.i18n.localized.label-field": "Enable localization for this field"
87
+ "plugin.schema.i18n.localized.label-field": "Enable localization for this field",
88
+ "list-view.table.header.label": "Available in"
88
89
  };
89
90
 
90
91
  module.exports = en;
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -82,7 +82,8 @@ var en = {
82
82
  "plugin.schema.i18n.localized.description-content-type": "Allows translating an entry into different languages",
83
83
  "plugin.schema.i18n.localized.description-field": "The field can have different values in each language",
84
84
  "plugin.schema.i18n.localized.label-content-type": "Internationalization",
85
- "plugin.schema.i18n.localized.label-field": "Enable localization for this field"
85
+ "plugin.schema.i18n.localized.label-field": "Enable localization for this field",
86
+ "list-view.table.header.label": "Available in"
86
87
  };
87
88
 
88
89
  export { en as default };
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -27,10 +27,7 @@ var es = {
27
27
  "Settings.locales.modal.advanced.setAsDefault.hint": "Se requiere una configuración regional predeterminada, cámbiela seleccionando otra",
28
28
  "Settings.locales.modal.advanced.settings": "Ajustes",
29
29
  "Settings.locales.modal.base": "Configuraciones base",
30
- "Settings.locales.modal.create.alreadyExist": "Esta configuración regional ya existe",
31
- "Settings.locales.modal.create.defaultLocales.loading": "Cargando las configuraciones regionales disponibles ...",
32
30
  "Settings.locales.modal.create.success": "Configuración regional agregada correctamente",
33
- "Settings.locales.modal.create.tab.label": "Navegación entre la configuración básica de I18N y la configuración avanzada",
34
31
  "Settings.locales.modal.delete.confirm": "Si, borrar",
35
32
  "Settings.locales.modal.delete.message": "Eliminar esta configuración regional eliminará todo el contenido asociado. Si desea conservar algún contenido, asegúrese de reasignarlo primero a otra configuración regional.",
36
33
  "Settings.locales.modal.delete.secondMessage": "¿Quieres eliminar esta configuración regional?",
@@ -40,10 +37,7 @@ var es = {
40
37
  "Settings.locales.modal.edit.success": "Configuración regional editada correctamente",
41
38
  "Settings.locales.modal.edit.tab.label": "Navegación entre la configuración básica de I18N y la configuración avanzada",
42
39
  "Settings.locales.modal.create.name.label": "Nombre para la configuración regional",
43
- "Settings.locales.modal.create.name.label.description": "La configuración regional se mostrará con este nombre en el panel de administración.",
44
- "Settings.locales.modal.create.name.label.error": "El nombre de la configuración regional debe tener menos de 50 caracteres.",
45
40
  "Settings.locales.modal.locales.label": "Configuraciones regionales",
46
- "Settings.locales.modal.locales.loaded": "Las configuraciones regionales se han cargado correctamente.",
47
41
  "Settings.locales.modal.title": "Configuraciones",
48
42
  "Settings.locales.row.default-locale": "Configuración regional predeterminada",
49
43
  "Settings.locales.row.displayName": "Nombre",
@@ -81,7 +75,8 @@ var es = {
81
75
  "Settings.locales.modal.create.code.error": "Por favor selecciona una localización",
82
76
  "Settings.locales.modal.create.name.description": "La localización se mostrará con ese nombre en el panel de administración",
83
77
  "Settings.locales.modal.create.name.error.min": "El nombre de la localización sólo puede tener menos de 50 caracteres.",
84
- "Settings.locales.modal.create.name.error.required": "Asigna un nombre a la localización"
78
+ "Settings.locales.modal.create.name.error.required": "Asigna un nombre a la localización",
79
+ "list-view.table.header.label": "Disponible en"
85
80
  };
86
81
 
87
82
  module.exports = es;
@@ -1 +1 @@
1
- {"version":3,"file":"es.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"es.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,10 +25,7 @@ var es = {
25
25
  "Settings.locales.modal.advanced.setAsDefault.hint": "Se requiere una configuración regional predeterminada, cámbiela seleccionando otra",
26
26
  "Settings.locales.modal.advanced.settings": "Ajustes",
27
27
  "Settings.locales.modal.base": "Configuraciones base",
28
- "Settings.locales.modal.create.alreadyExist": "Esta configuración regional ya existe",
29
- "Settings.locales.modal.create.defaultLocales.loading": "Cargando las configuraciones regionales disponibles ...",
30
28
  "Settings.locales.modal.create.success": "Configuración regional agregada correctamente",
31
- "Settings.locales.modal.create.tab.label": "Navegación entre la configuración básica de I18N y la configuración avanzada",
32
29
  "Settings.locales.modal.delete.confirm": "Si, borrar",
33
30
  "Settings.locales.modal.delete.message": "Eliminar esta configuración regional eliminará todo el contenido asociado. Si desea conservar algún contenido, asegúrese de reasignarlo primero a otra configuración regional.",
34
31
  "Settings.locales.modal.delete.secondMessage": "¿Quieres eliminar esta configuración regional?",
@@ -38,10 +35,7 @@ var es = {
38
35
  "Settings.locales.modal.edit.success": "Configuración regional editada correctamente",
39
36
  "Settings.locales.modal.edit.tab.label": "Navegación entre la configuración básica de I18N y la configuración avanzada",
40
37
  "Settings.locales.modal.create.name.label": "Nombre para la configuración regional",
41
- "Settings.locales.modal.create.name.label.description": "La configuración regional se mostrará con este nombre en el panel de administración.",
42
- "Settings.locales.modal.create.name.label.error": "El nombre de la configuración regional debe tener menos de 50 caracteres.",
43
38
  "Settings.locales.modal.locales.label": "Configuraciones regionales",
44
- "Settings.locales.modal.locales.loaded": "Las configuraciones regionales se han cargado correctamente.",
45
39
  "Settings.locales.modal.title": "Configuraciones",
46
40
  "Settings.locales.row.default-locale": "Configuración regional predeterminada",
47
41
  "Settings.locales.row.displayName": "Nombre",
@@ -79,7 +73,8 @@ var es = {
79
73
  "Settings.locales.modal.create.code.error": "Por favor selecciona una localización",
80
74
  "Settings.locales.modal.create.name.description": "La localización se mostrará con ese nombre en el panel de administración",
81
75
  "Settings.locales.modal.create.name.error.min": "El nombre de la localización sólo puede tener menos de 50 caracteres.",
82
- "Settings.locales.modal.create.name.error.required": "Asigna un nombre a la localización"
76
+ "Settings.locales.modal.create.name.error.required": "Asigna un nombre a la localización",
77
+ "list-view.table.header.label": "Disponible en"
83
78
  };
84
79
 
85
80
  export { es as default };
@@ -1 +1 @@
1
- {"version":3,"file":"es.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"es.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -27,10 +27,7 @@ var fr = {
27
27
  "Settings.locales.modal.advanced.setAsDefault.hint": "Une locale par défaut est requise, changez-la en en sélectionnant une autre",
28
28
  "Settings.locales.modal.advanced.settings": "Paramètres",
29
29
  "Settings.locales.modal.base": "Paramètres de base",
30
- "Settings.locales.modal.create.alreadyExist": "Cette locale existe déjà",
31
- "Settings.locales.modal.create.defaultLocales.loading": "Chargement des locales disponibles...",
32
30
  "Settings.locales.modal.create.success": "Locale ajoutée avec succès",
33
- "Settings.locales.modal.create.tab.label": "Navigation entre les paramètres de base et les paramètres avancés de l'I18N",
34
31
  "Settings.locales.modal.delete.confirm": "Oui, supprimer",
35
32
  "Settings.locales.modal.delete.message": "La suppression de cette locale entraîne la suppression de tout le contenu associé. Si vous souhaitez conserver du contenu, veillez à le réaffecter à une autre locale au préalable.",
36
33
  "Settings.locales.modal.delete.secondMessage": "Voulez-vous supprimer cette locale ?",
@@ -40,10 +37,9 @@ var fr = {
40
37
  "Settings.locales.modal.edit.success": "Locale modifiée avec succès",
41
38
  "Settings.locales.modal.edit.tab.label": "Navigation entre les paramètres de base et les paramètres avancés de l'I18N",
42
39
  "Settings.locales.modal.create.name.label": "Nom d'affichage de la locale",
43
- "Settings.locales.modal.create.name.label.description": "La locale sera affichée sous ce nom dans le panneau d'administration.",
40
+ "Settings.locales.modal.create.name.description": "La locale sera affichée sous ce nom dans le panneau d'administration.",
44
41
  "Settings.locales.modal.create.name.label.error": "Le nom d'affichage de la locale doit avoir moins de 50 caractères.",
45
42
  "Settings.locales.modal.locales.label": "Locales",
46
- "Settings.locales.modal.locales.loaded": "Les locales ont été chargées avec succès.",
47
43
  "Settings.locales.modal.title": "Configurations",
48
44
  "Settings.locales.row.default-locale": "Locale par défaut",
49
45
  "Settings.locales.row.displayName": "Nom d'affichage",
@@ -1 +1 @@
1
- {"version":3,"file":"fr.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"fr.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,10 +25,7 @@ var fr = {
25
25
  "Settings.locales.modal.advanced.setAsDefault.hint": "Une locale par défaut est requise, changez-la en en sélectionnant une autre",
26
26
  "Settings.locales.modal.advanced.settings": "Paramètres",
27
27
  "Settings.locales.modal.base": "Paramètres de base",
28
- "Settings.locales.modal.create.alreadyExist": "Cette locale existe déjà",
29
- "Settings.locales.modal.create.defaultLocales.loading": "Chargement des locales disponibles...",
30
28
  "Settings.locales.modal.create.success": "Locale ajoutée avec succès",
31
- "Settings.locales.modal.create.tab.label": "Navigation entre les paramètres de base et les paramètres avancés de l'I18N",
32
29
  "Settings.locales.modal.delete.confirm": "Oui, supprimer",
33
30
  "Settings.locales.modal.delete.message": "La suppression de cette locale entraîne la suppression de tout le contenu associé. Si vous souhaitez conserver du contenu, veillez à le réaffecter à une autre locale au préalable.",
34
31
  "Settings.locales.modal.delete.secondMessage": "Voulez-vous supprimer cette locale ?",
@@ -38,10 +35,9 @@ var fr = {
38
35
  "Settings.locales.modal.edit.success": "Locale modifiée avec succès",
39
36
  "Settings.locales.modal.edit.tab.label": "Navigation entre les paramètres de base et les paramètres avancés de l'I18N",
40
37
  "Settings.locales.modal.create.name.label": "Nom d'affichage de la locale",
41
- "Settings.locales.modal.create.name.label.description": "La locale sera affichée sous ce nom dans le panneau d'administration.",
38
+ "Settings.locales.modal.create.name.description": "La locale sera affichée sous ce nom dans le panneau d'administration.",
42
39
  "Settings.locales.modal.create.name.label.error": "Le nom d'affichage de la locale doit avoir moins de 50 caractères.",
43
40
  "Settings.locales.modal.locales.label": "Locales",
44
- "Settings.locales.modal.locales.loaded": "Les locales ont été chargées avec succès.",
45
41
  "Settings.locales.modal.title": "Configurations",
46
42
  "Settings.locales.row.default-locale": "Locale par défaut",
47
43
  "Settings.locales.row.displayName": "Nom d'affichage",
@@ -1 +1 @@
1
- {"version":3,"file":"fr.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"fr.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}