decaporg / decaporg/decap-cms

Config parsing fails when i18n is set to duplicate

Open
#7,332 6 comments 0 reactions 0 assignees View on GitHub
type: bug
Dominant language
JavaScript
Stars
19.4k
Forks
3.1k
Avg merge
1d 14h
Merged PRs (30d)
9

Description

**Describe the bug**

As per #7291 upon recently trying to configure a i18n site with the new `i18n: duplicate` value on a per-field basis as per the [i18n Documentation](https://decapcms.org/docs/i18n/), I discovered it causes my config to fail to parse.

**Expected behavior**

Setting `i18n: duplicate` should not cause config to fail to parse and should duplicate fields in a read-only fashion in the cloned page.

**Screenshots**

![390036025-dd39c504-82e3-446e-9a82-822f81e11c9f](https://github.com/user-attachments/assets/0f04f926-45a5-4117-9736-ad444d125120)

**Applicable Versions:**

- Decap CMS version: decap-cms 3.4.0
- Git provider: GitLab
- OS: Linux
- Browser version Firefox 115.14
- Site generator: Hugo
- Decap Setup: Hugo Module [headless-cms](https://github.com/privatemaker/headless-cms)

**CMS configuration**

```
locale: "en"
i18n:
structure: multiple_files
locales: [en, de]
default_locale: en
slug:
encoding: "ascii"
clean_accents: true
sanitize_replacement: "-"
collections:
- name: "blog"
label: "Blog"
label_singular: "Blog"
folder: "content/blog"
path: "{{slug}}"
widget: "list"
create: true
i18n: true
editor:
preview: true
preview_path: "blog/{{slug}}"
media_folder: '/static/uploads'
public_folder: '/uploads'
fields:
- label: "Title"
name: "title"
widget: "string"
i18n: true
- label: "Draft"
name: "draft"
widget: "boolean"
default: true
i18n: true
- label: "Image"
name: "banner"
widget: "image"
required: false
default: "/uploads/placeholder.jpg"
choose_url: true
media_folder: '/static/uploads'
public_folder: '/uploads'
i18n: true
```

If I change *any* of the `i18n: true` values in the fields to `i18n: duplicate` I get the broken config parsing error shown above.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.