@sveltia/cms 0.79.2 → 0.80.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -28
- package/dist/sveltia-cms.js +189 -187
- package/dist/sveltia-cms.js.map +1 -1
- package/dist/sveltia-cms.mjs +195 -193
- package/dist/sveltia-cms.mjs.map +1 -1
- package/package.json +1 -1
- package/types/public.d.ts +18 -10
package/README.md
CHANGED
|
@@ -99,7 +99,7 @@ Sveltia CMS was born in November 2022, when the progress of Netlify CMS was stal
|
|
|
99
99
|
|
|
100
100
|
To achieve radical improvements in UX, performance, i18n and other areas, it was ultimately decided to build an alternative from the ground up, while ensuring an easy migration path from the other. After proving the idea with a rapid [Svelte](https://svelte.dev/) prototype, development was accelerated to address their primary use cases. The new product has since been named Sveltia CMS and released as open source software to encourage wider adoption.
|
|
101
101
|
|
|
102
|
-
We loved the
|
|
102
|
+
We loved the simple architecture of Netlify CMS that turned a Git repository into a database with a single page app served from a CDN plus a plain YAML config file. In support of the [Jamstack](https://jamstack.org/) concept, we wanted to revive it, modernize it, and take it to the next level.
|
|
103
103
|
|
|
104
104
|
### Our advantage
|
|
105
105
|
|
|
@@ -109,7 +109,7 @@ Due to its unfortunate abandonment in early 2022, Netlify CMS spawned 3 successo
|
|
|
109
109
|
- **Sveltia CMS**: not a fork but a **complete rewrite** or “total reboot”, started in November 2022, first appeared on GitHub in March 2023
|
|
110
110
|
- [Decap CMS](https://github.com/decaporg/decap-cms): a rebranded version, [announced in February 2023](https://www.netlify.com/blog/netlify-cms-to-become-decap-cms/) as the official successor with a Netlify agency partner taking ownership — mostly stagnant, with only occasional releases
|
|
111
111
|
|
|
112
|
-
Sveltia CMS is the only project that doesn’t inherit the complexity, technical debt, and numerous bugs of Netlify CMS, which was launched in 2015. Our product is better by design: We rebuilt the app from the ground up using a [modern framework](https://svelte.dev/)
|
|
112
|
+
Sveltia CMS is the only project that doesn’t inherit the complexity, technical debt, and numerous bugs of Netlify CMS, which was launched in 2015. Our product is better by design: We rebuilt the app from the ground up using a [modern framework](https://svelte.dev/) without looking at the predecessor’s code, while closely monitoring and analyzing their issue tracker. This lets us make [hundreds of improvements](#differentiators) without getting stuck in the old system.
|
|
113
113
|
|
|
114
114
|
While Sveltia CMS was created to replace legacy Netlify CMS instances, it can also be used as an alternative to other Netlify CMS successors. With its [solid i18n support](#better-i18n-support), we’re hoping our product will eventually be an appearing option for anyone looking for a free headless CMS.
|
|
115
115
|
|
|
@@ -125,15 +125,15 @@ While Sveltia CMS was created to replace legacy Netlify CMS instances, it can al
|
|
|
125
125
|
|
|
126
126
|
Sveltia CMS is currently in **beta** and version 1.0 (GA) is expected to ship in Q4 2025. Check our [release notes](https://github.com/sveltia/sveltia-cms/releases) and follow us on [Bluesky](https://bsky.app/profile/sveltiacms.app) for updates. See also our [roadmap](#roadmap).
|
|
127
127
|
|
|
128
|
-
While we fix reported bugs as quickly as possible, usually within 24 hours, our overall progress may be slower than you think. The thing is, it’s not just a personal project of [@kyoshino](https://github.com/kyoshino), but also a complicated system
|
|
128
|
+
While we fix reported bugs as quickly as possible, usually within 24 hours, our overall progress may be slower than you think. The thing is, it’s not just a personal project of [@kyoshino](https://github.com/kyoshino), but also a complicated system involving various kinds of activities that require considerable effort:
|
|
129
129
|
|
|
130
130
|
- Ensuring substantial [compatibility with Netlify/Decap CMS](#compatibility)
|
|
131
131
|
- Providing partial [compatibility with Static CMS](#compatibility-with-static-cms)
|
|
132
132
|
- Tackling as many [Netlify/Decap CMS issues](https://github.com/decaporg/decap-cms/issues) as possible
|
|
133
|
-
- So far,
|
|
133
|
+
- So far, 220+ issues, or 440+ if including duplicates, have been effectively solved in Sveltia CMS
|
|
134
134
|
- Target:
|
|
135
135
|
- 200 issues, or 400 if including duplicates, by GA — We did it! 🎉
|
|
136
|
-
-
|
|
136
|
+
- 400 issues, or 800 if including duplicates, in the future 💪
|
|
137
137
|
- or every single issue that’s relevant, fixable, and worth dealing with 🔥
|
|
138
138
|
- Issues include everything from feature requests to bug reports and [issues closed as stale](https://github.com/decaporg/decap-cms/issues?q=is%3Aissue+%22Closing+as+stale%22) or without an effective solution, as well as [discussions](https://github.com/decaporg/decap-cms/discussions) and stalled [pull requests](https://github.com/decaporg/decap-cms/pulls)
|
|
139
139
|
- Many of the bugs, including the annoying crashes, have already been solved
|
|
@@ -144,12 +144,14 @@ While we fix reported bugs as quickly as possible, usually within 24 hours, our
|
|
|
144
144
|
- Responding to requests from the maintainer’s clients
|
|
145
145
|
- Making the code clean and maintainable
|
|
146
146
|
|
|
147
|
-
<br>
|
|
148
148
|
|
|
149
149
|
## Differentiators
|
|
150
150
|
|
|
151
151
|
Netlify/Decap CMS users will definitely be pleased and surprised by the numerous improvements we have made, from the small to the large. Here’s what makes Sveltia CMS different. Look how serious we are!
|
|
152
152
|
|
|
153
|
+
Note: This lengthy section compares Sveltia CMS with both Netlify CMS and Decap CMS. Some of the listed bugs may have been fixed in the current version of Decap CMS.
|
|
154
|
+
|
|
153
155
|
### Better UX
|
|
154
156
|
|
|
155
157
|
- Created and actively maintained by an [experienced UX engineer](https://github.com/kyoshino) who loves code, design, marketing and problem solving. You can expect constant improvements to the user experience (UX) and developer experience (DX) across the platform.
|
|
@@ -173,6 +175,7 @@ Netlify/Decap CMS users will definitely be pleased and surprised by the numerous
|
|
|
173
175
|
- Small footprint: The bundle size is less than 500 KB when minified and [brotlied](https://en.wikipedia.org/wiki/Brotli), which is much lighter than Netlify CMS (1.5 MB), Decap CMS (1.5 MB) and Static CMS (2.6 MB).[^57][^64] This number is remarkable because even though some Netlify/Decap CMS features are [omitted](#features-not-to-be-implemented) or [unimplemented](#current-limitations) in Sveltia CMS, we have added a lot of new features. That’s the power of [Svelte 5](https://svelte.dev/blog/svelte-5-is-alive) + [Vite](https://vite.dev/).
|
|
174
176
|
- Uses the GraphQL API for GitHub and GitLab to quickly fetch content at once, so that entries and assets can be listed and searched instantly[^32][^65] (the useless `search` configuration option is therefore ignored). It also avoids the slowness and potential API rate limit violations caused by hundreds of requests with Relation widgets.[^14]
|
|
175
177
|
- Saving entries and assets to GitHub is also much faster thanks to the [GraphQL mutation](https://github.blog/changelog/2021-09-13-a-simpler-api-for-authoring-commits/).
|
|
178
|
+
- The Gitea backend is also faster because it utilizes an efficient API method introduced in Gitea 1.24.
|
|
176
179
|
- Our [local repository workflow](#working-with-a-local-git-repository) utilizes the modern [File System Access API](https://developer.chrome.com/docs/capabilities/web-apis/file-system-access) to read and write files natively through the web browser, rather than using a slow, ad hoc REST API through a proxy server.
|
|
177
180
|
- Sorting, filtering and grouping of entries is done instantly without reloading the entire content.
|
|
178
181
|
- Uses caching, lazy loading and infinite scrolling techniques. A list of repository files is stored locally for faster startup and bandwidth savings.
|
|
@@ -198,7 +201,7 @@ Netlify/Decap CMS users will definitely be pleased and surprised by the numerous
|
|
|
198
201
|
### Better accessibility
|
|
199
202
|
|
|
200
203
|
- Improved keyboard handling lets you efficiently navigate through UI elements using the Tab, Space, Enter and arrow keys.[^17][^67]
|
|
201
|
-
- Comprehensive [WAI-ARIA](https://w3c.github.io/aria/) support enables users who rely on screen readers such as NVDA and VoiceOver. An announcement is read out when you navigate to another page.
|
|
204
|
+
- Comprehensive [WAI-ARIA](https://w3c.github.io/aria/) support enables users who rely on screen readers such as NVDA and VoiceOver.[^228] An announcement is read out when you navigate to another page.
|
|
202
205
|
- The rich text editor is built with [Lexical](https://lexical.dev/), which is said to follow accessibility best practices. The [Dragon NaturallySpeaking support](https://lexical.dev/docs/packages/lexical-dragon) is enabled.
|
|
203
206
|
- Ensures sufficient contrast between the foreground text and background colours.
|
|
204
207
|
- Enabled and disabled buttons can be clearly distinguished.[^105]
|
|
@@ -229,7 +232,7 @@ Netlify/Decap CMS users will definitely be pleased and surprised by the numerous
|
|
|
229
232
|
|
|
230
233
|
- Sveltia CMS supports a [JSON configuration file](#providing-a-json-configuration-file) that can be generated for bulk or complex collections.[^60]
|
|
231
234
|
- Also supports [multiple configuration files](#providing-multiple-configuration-files) to allow developers to modularize the configuration.[^197]
|
|
232
|
-
- Improved TypeScript support: We try to keep our type definitions for `CMS.init()` and other methods complete, accurate, up-to-date and annotated.[^190][^191][^192][^193] This makes it easier to provide a site config object when [manually initializing](https://decapcms.org/docs/manual-initialization/) the CMS.
|
|
235
|
+
- Improved TypeScript support: We try to keep our type definitions for `CMS.init()` and other methods complete, accurate, up-to-date and annotated.[^190][^191][^192][^193][^227] This makes it easier to provide a site config object when [manually initializing](https://decapcms.org/docs/manual-initialization/) the CMS.
|
|
233
236
|
|
|
234
237
|
### Better backend support
|
|
235
238
|
|
|
@@ -240,10 +243,11 @@ Netlify/Decap CMS users will definitely be pleased and surprised by the numerous
|
|
|
240
243
|
- Service status checks are performed frequently and an incident notification is displayed prominently.
|
|
241
244
|
- Users can quickly open the source file of an entry or asset in your repository using View on GitHub (or GitLab or Gitea) under the 3-dot menu when Developer Mode is enabled.
|
|
242
245
|
- We provide [our own OAuth client](https://github.com/sveltia/sveltia-cms-auth) for GitHub and GitLab.
|
|
246
|
+
- The GitLab backend supports Git LFS ([documentation](https://docs.gitlab.com/topics/git/lfs/)).[^231]
|
|
243
247
|
- Users won’t get a 404 Not Found error when you sign in to the GitLab backend.[^115]
|
|
244
|
-
- Our Gitea backend is high-performing because it retrieves multiple entries
|
|
248
|
+
- Our Gitea backend is high-performing because it retrieves multiple entries at once. It also supports Git LFS ([documentation](https://docs.gitea.com/administration/git-lfs-setup)). Additionally, the backend won’t cause 400 Bad Request errors due to the presence of `DRAFT_MEDIA_FILES` in file paths.[^222]
|
|
245
249
|
- The OAuth access token is automatically renewed when using the GitLab or Gitea backend with PKCE authorization.[^224] Token renewal for other backend configurations will be implemented later.
|
|
246
|
-
- Features the all-new local
|
|
250
|
+
- Features the all-new [local repository workflow](#working-with-a-local-git-repository) that boosts DX. See the [productivity section](#better-productivity) above.
|
|
247
251
|
- Developers can select the local and remote backends while working on a local server.
|
|
248
252
|
- The Test backend saves entries and assets in the browser’s [origin private file system](https://web.dev/articles/origin-private-file-system) (OPFS) so that changes are not discarded when the browser tab is closed or reloaded.[^194] The persistent storage support works with all modern browsers [except Safari](https://bugs.webkit.org/show_bug.cgi?id=254726).
|
|
249
253
|
|
|
@@ -255,7 +259,7 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
255
259
|
- The [i18n limitations](https://decapcms.org/docs/i18n/#limitations) in Netlify/Decap CMS do not apply to Sveltia CMS:
|
|
256
260
|
- File collections support multiple files/folders i18n structures.[^87] To enable it, simply use the `{{locale}}` template tag in the `file` path option, e.g. `content/pages/about.{{locale}}.json` or `content/pages/{{locale}}/about.json`. For backward compatibility, the global `structure` option only applies to folder collections, and the default i18n structure for file collections remains single file.
|
|
257
261
|
- The List and Object widgets support the `i18n: duplicate` field configuration so that changes made with these widgets are duplicated between locales.[^7][^68] The `i18n` configuration can normally be used for the subfields.
|
|
258
|
-
- The new `multiple_folders_i18n_root` i18n structure allows to have locale folders below the project root: `<locale>/<folder>/<slug>.<extension>`.
|
|
262
|
+
- The new `multiple_folders_i18n_root` i18n structure allows to have locale folders below the project root: `<locale>/<folder>/<slug>.<extension>`.[^182]
|
|
259
263
|
- The new `omit_default_locale_from_filename` i18n option allows to exclude the default locale from filenames. This option applies to entry collections with the `multiple_files` i18n structure enabled, as well as to file collection items with the `file` path ending with `.{{locale}}.<extension>`, aiming to support [Zola’s multilingual sites](https://www.getzola.org/documentation/content/multilingual/). ([Discussion](https://github.com/sveltia/sveltia-cms/discussions/394))
|
|
260
264
|
- The `required` field option accepts an array of locale codes in addition to a boolean, making the field required for a subset of locales when i18n support is enabled. For example, if only English is required, you could write `required: [en]`. An empty array is equivalent to `required: false`.
|
|
261
265
|
- [Entry-relative media folders](https://decapcms.org/docs/collection-folder/#media-and-public-folder) can be used in conjunction with the `multiple_folders` i18n structure.[^21]
|
|
@@ -291,6 +295,7 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
291
295
|
- A nested field can be specified using dot notation, e.g. `heroImage.src`.
|
|
292
296
|
- A wildcard in the field name is also supported, e.g. `images.*.src`.
|
|
293
297
|
- Multiple field names can be specified as an array for fallback purpose, e.g. `[thumbnail, cover]`.
|
|
298
|
+
- Occasionally, you may not have suitable images for thumbnails. For example, your images may have subtle differences or varied aspect ratios. In that case, you can disable the thumbnail with `thumbnail: []`.
|
|
294
299
|
- If this option is omitted, any non-nested, non-empty Image or File field will be used.[^173]
|
|
295
300
|
- `limit`: Specify the maximum number of entries that can be created in a folder collection.[^185]
|
|
296
301
|
- `divider`: [Add dividers to the collection list](#adding-dividers-to-the-collection-list).
|
|
@@ -327,7 +332,7 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
327
332
|
- Sorting entries by a DateTime field works as expected.[^110]
|
|
328
333
|
- Entry grouping and sorting can work together. For example, it’s possible to group by year and then sort by year if configured properly.
|
|
329
334
|
- [Index file inclusion](#including-hugos-special-index-file-in-a-folder-collection) allows users to edit Hugo’s special `_index.md` file, including localized ones like `_index.en.md`, within a folder collection.[^201] If the `index_file` option is not defined, these files will be hidden in a folder collection unless the `path` option is configured to end with `_index` and the `extension` is `md`.[^120]
|
|
330
|
-
- A console error won’t be thrown when a collection doesn’t have the `title` field.[^152] In that case, an entry summary will be generated from a header in the Markdown `body` field, if exists, or from the entry slug, so the summary will never be an empty.[^161] This supports a typical VitePress setup.
|
|
335
|
+
- A console error won’t be thrown when a collection doesn’t have the `title` field.[^152] In that case, an entry summary will be generated from a header in the Markdown `body` field, if exists, or from the entry slug, so the summary will never be an empty.[^161] This supports a typical VitePress and Docusaurus setup.[^230]
|
|
331
336
|
- If there was an error while parsing an entry file, such as duplicate front matter keys, it won’t show up as a blank entry, and a clear error message will be displayed in the browser console.[^121]
|
|
332
337
|
- A single file can be used for more than one item in a file collection.[^127]
|
|
333
338
|
- User interface
|
|
@@ -360,8 +365,8 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
360
365
|
- For better performance, the Preview Pane doesn’t use an `<iframe>`.[^179]
|
|
361
366
|
- The Preview Pane displays all fields, including each label, making it easier to see which fields are populated.
|
|
362
367
|
- Clicking a field in the Preview Pane focuses the corresponding field in the Edit Pane.[^41] It automatically expands when collapsed.
|
|
363
|
-
- This is equivalent to the (misleading) visual editing feature introduced in [Decap 3.6.0](https://github.com/decaporg/decap-cms/releases/tag/decap-cms%403.6.0), but our click-to-highlight feature is enabled by default; you don’t need to opt in with the `editor.visualEditing` collection option.
|
|
364
|
-
- Our implementation doesn’t cause a module import error or broken image previews.[^
|
|
368
|
+
- This is equivalent to the (misleading) visual editing feature introduced in [Decap CMS 3.6.0](https://github.com/decaporg/decap-cms/releases/tag/decap-cms%403.6.0), but our click-to-highlight feature is enabled by default; you don’t need to opt in with the `editor.visualEditing` collection option.
|
|
369
|
+
- Our implementation doesn’t cause a module import error[^225] or broken image previews.[^188]
|
|
365
370
|
- The Preview Pane doesn’t cause a scrolling issue.[^136]
|
|
366
371
|
- The Preview Pane doesn’t crash with a Minified React error.[^186]
|
|
367
372
|
- Provides better scroll synchronization between the panes when editing or previewing an entry.[^92]
|
|
@@ -384,7 +389,7 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
384
389
|
|
|
385
390
|
### Better widgets
|
|
386
391
|
|
|
387
|
-
Sveltia CMS supports all [built-in widgets](https://decapcms.org/docs/widgets/) available in Netlify/Decap CMS except Map. We have made significant improvements to these widgets while adding some new ones. The remaining Map widget will be added soon.
|
|
392
|
+
Sveltia CMS supports all [built-in widgets](https://decapcms.org/docs/widgets/) available in Netlify/Decap CMS except Map. We have made significant improvements to these widgets while adding some new ones. The remaining Map widget will be added soon, followed by support for [custom widgets](https://decapcms.org/docs/custom-widgets/).
|
|
388
393
|
|
|
389
394
|
Note: The Date widget has been deprecated in Netlify CMS and removed from both Decap CMS and Sveltia CMS in favour of the DateTime widget, as noted in the [Compatibility](#compatibility) section.
|
|
390
395
|
|
|
@@ -422,12 +427,12 @@ Note: The Date widget has been deprecated in Netlify CMS and removed from both D
|
|
|
422
427
|
- It’s possible to omit `fields` in a variable type object.[^163] In that case, only the `typeKey` (default: `type`) is saved in the output.
|
|
423
428
|
- A collapsed List field will not display a programmatic summary like `List [ Map { "key": "value" } ]` if the `summary` option is not set.[^183]
|
|
424
429
|
- Markdown
|
|
425
|
-
- The rich text editor is built with the well-maintained [Lexical](https://lexical.dev/) framework, which solves various issues with a [Slate](https://github.com/ianstormtaylor/slate)-based editor in Netlify/Decap CMS, including fatal application crashes,[^71][^72][^73][^111] lost formatting when pasting,[^124] an extra line break when pasting,[^169] backslash injections,[^53] dropdown visibility,[^70] and text input difficulties with IME.[^54]
|
|
430
|
+
- The rich text editor is built with the well-maintained [Lexical](https://lexical.dev/) framework, which solves various issues with a [Slate](https://github.com/ianstormtaylor/slate)-based editor in Netlify/Decap CMS, including fatal application crashes,[^71][^72][^73][^111] lost formatting when pasting,[^124] an extra line break when pasting,[^169] extra HTML comments when pasting,[^229] backslash injections,[^53] dropdown visibility,[^70] and text input difficulties with IME.[^54]
|
|
426
431
|
- The default editor mode can be set by changing the order of the `modes` option.[^58] If you want to use the plain text editor by default, add `modes: [raw, rich_text]` to the field configuration.
|
|
427
432
|
- A Markdown field plays well with a variable type List field.[^202]
|
|
428
433
|
- A combination of bold and italic doesn’t create a confusing 3-asterisk markup.[^160] In our editor, bold is 2 asterisks and italic is an underscore.
|
|
429
434
|
- The built-in `image` component can be inserted with a single click.
|
|
430
|
-
- The built-in `image` component allows users to add, edit or remove a link on an image.[^171]
|
|
435
|
+
- The built-in `image` component allows users to add, edit or remove a link on an image.[^171] To disable this feature, add `linked_images: false` to the Markdown field options.
|
|
431
436
|
- It’s possible to paste/drop local/remote images into the rich text editor to insert them as expected. Note: Pasting multiple images is [not supported in Firefox](https://bugzilla.mozilla.org/show_bug.cgi?id=864052). In Netlify/Decap CMS, pasting an image may cause the application to crash.
|
|
432
437
|
- The built-in `code-block` component is implemented just like a blockquote. You can simply convert a normal paragraph into a code block instead of adding a component.
|
|
433
438
|
- Code in a code block in the editor can be copied as expected.[^165]
|
|
@@ -437,7 +442,7 @@ Note: The Date widget has been deprecated in Netlify CMS and removed from both D
|
|
|
437
442
|
- If the `value_type` option is `int` (default) or `float`, the `required` option is `false`, and the value is not entered, the field will be saved as `null` instead of an empty string.[^157] If `value_type` is anything else, the data type will remain a string.
|
|
438
443
|
- Object
|
|
439
444
|
- Sveltia CMS offers two ways to have conditional fields in a collection:[^30]
|
|
440
|
-
- The Object widget supports [variable types](https://decapcms.org/docs/variable-type-widgets/) (the `types` and `typeKey` options) just like the List widget.
|
|
445
|
+
- The Object widget supports [variable types](https://decapcms.org/docs/variable-type-widgets/) (the `types` and `typeKey` options) just like the List widget.[^226]
|
|
441
446
|
- An optional Object field (`required: false`) can be manually added or removed with a checkbox.[^88] If unadded or removed, the required subfields won’t trigger validation errors,[^16] and the field will be saved as `null`.
|
|
442
447
|
- Relation
|
|
443
448
|
- Field options are displayed with no additional API requests.[^14] The confusing `options_length` option, which defaults to 20, is therefore ignored.[^76]
|
|
@@ -519,7 +524,7 @@ Note: The Date widget has been deprecated in Netlify CMS and removed from both D
|
|
|
519
524
|
- The `max_file_size` option for the File/Image widget can be defined within the global `media_library` option, using `default` as the library name. It applies to all File/Image entry fields, as well as direct uploads to the Asset Library. The option can also be part of the [new `media_libraries` option](#configuring-multiple-media-libraries).
|
|
520
525
|
- Other integrations
|
|
521
526
|
- Integrates stock photo providers, including Pexels, Pixabay and Unsplash.[^8] Developers can [disable them](#disabling-stock-assets) if needed.
|
|
522
|
-
- More integration options, including Amazon S3 and Cloudflare R2, would be added in the future.
|
|
527
|
+
- More integration options, including Amazon S3 and Cloudflare R2/Images/Stream, would be added in the future.
|
|
523
528
|
- The global `media_folder` can be an empty string (or `.` or `/`) if you want to store assets in the root folder.
|
|
524
529
|
- PDF documents are displayed with a thumbnail image in both the Asset Library and the Select File dialog, making it easier to find the file you’re looking for.[^38]
|
|
525
530
|
- Assets stored in an entry-relative media folder are displayed in the Asset Library.[^142]
|
|
@@ -1393,7 +1398,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1393
1398
|
|
|
1394
1399
|
[^1]: Netlify/Decap CMS [#2557](https://github.com/decaporg/decap-cms/issues/2557)
|
|
1395
1400
|
|
|
1396
|
-
[^2]: Netlify/Decap CMS [#2039](https://github.com/decaporg/decap-cms/issues/2039), [#3267](https://github.com/decaporg/decap-cms/issues/3267)
|
|
1401
|
+
[^2]: Netlify/Decap CMS [#2039](https://github.com/decaporg/decap-cms/issues/2039), [#3267](https://github.com/decaporg/decap-cms/issues/3267), [#7084](https://github.com/decaporg/decap-cms/discussions/7084)
|
|
1397
1402
|
|
|
1398
1403
|
[^3]: Netlify/Decap CMS [#1040](https://github.com/decaporg/decap-cms/issues/1040)
|
|
1399
1404
|
|
|
@@ -1425,7 +1430,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1425
1430
|
|
|
1426
1431
|
[^17]: Netlify/Decap CMS [#1333](https://github.com/decaporg/decap-cms/issues/1333), [#4216](https://github.com/decaporg/decap-cms/issues/4216)
|
|
1427
1432
|
|
|
1428
|
-
[^18]: Netlify/Decap CMS [#441](https://github.com/decaporg/decap-cms/issues/441), [#1277](https://github.com/decaporg/decap-cms/issues/1277), [#1339](https://github.com/decaporg/decap-cms/issues/1339), [#2500](https://github.com/decaporg/decap-cms/issues/2500), [#2833](https://github.com/decaporg/decap-cms/issues/2833), [#2984](https://github.com/decaporg/decap-cms/issues/2984), [#3852](https://github.com/decaporg/decap-cms/issues/3852)
|
|
1433
|
+
[^18]: Netlify/Decap CMS [#441](https://github.com/decaporg/decap-cms/issues/441), [#1277](https://github.com/decaporg/decap-cms/issues/1277), [#1339](https://github.com/decaporg/decap-cms/issues/1339), [#2500](https://github.com/decaporg/decap-cms/issues/2500), [#2833](https://github.com/decaporg/decap-cms/issues/2833), [#2984](https://github.com/decaporg/decap-cms/issues/2984), [#3852](https://github.com/decaporg/decap-cms/issues/3852), [#7083](https://github.com/decaporg/decap-cms/discussions/7083)
|
|
1429
1434
|
|
|
1430
1435
|
[^19]: Netlify/Decap CMS [#5910](https://github.com/decaporg/decap-cms/issues/5910)
|
|
1431
1436
|
|
|
@@ -1559,7 +1564,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1559
1564
|
|
|
1560
1565
|
[^84]: Netlify/Decap CMS [#7142](https://github.com/decaporg/decap-cms/issues/7142), [#7276](https://github.com/decaporg/decap-cms/issues/7276)
|
|
1561
1566
|
|
|
1562
|
-
[^85]: Netlify/Decap CMS [#5055](https://github.com/decaporg/decap-cms/issues/5055), [#5470](https://github.com/decaporg/decap-cms/issues/5470), [#6989](https://github.com/decaporg/decap-cms/issues/6989)
|
|
1567
|
+
[^85]: Netlify/Decap CMS [#5055](https://github.com/decaporg/decap-cms/issues/5055), [#5470](https://github.com/decaporg/decap-cms/issues/5470), [#6956](https://github.com/decaporg/decap-cms/discussions/6956), [#6989](https://github.com/decaporg/decap-cms/issues/6989)
|
|
1563
1568
|
|
|
1564
1569
|
[^86]: Netlify/Decap CMS [#1609](https://github.com/decaporg/decap-cms/issues/1609), [#3557](https://github.com/decaporg/decap-cms/issues/3557), [#5253](https://github.com/decaporg/decap-cms/issues/5253), [#6759](https://github.com/decaporg/decap-cms/issues/6759), [#6901](https://github.com/decaporg/decap-cms/issues/6901)
|
|
1565
1570
|
|
|
@@ -1615,7 +1620,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1615
1620
|
|
|
1616
1621
|
[^112]: Netlify/Decap CMS [#5815](https://github.com/decaporg/decap-cms/issues/5815), [#6522](https://github.com/decaporg/decap-cms/issues/6522), [#6532](https://github.com/decaporg/decap-cms/issues/6532), [#6588](https://github.com/decaporg/decap-cms/issues/6588), [#6617](https://github.com/decaporg/decap-cms/issues/6617), [#6640](https://github.com/decaporg/decap-cms/issues/6640), [#6663](https://github.com/decaporg/decap-cms/issues/6663), [#6695](https://github.com/decaporg/decap-cms/issues/6695), [#6697](https://github.com/decaporg/decap-cms/issues/6697), [#6764](https://github.com/decaporg/decap-cms/issues/6764), [#6765](https://github.com/decaporg/decap-cms/issues/6765), [#6835](https://github.com/decaporg/decap-cms/issues/6835), [#6983](https://github.com/decaporg/decap-cms/issues/6983), [#7205](https://github.com/decaporg/decap-cms/issues/7205), [#7450](https://github.com/decaporg/decap-cms/issues/7450), [#7453](https://github.com/decaporg/decap-cms/issues/7453)
|
|
1617
1622
|
|
|
1618
|
-
[^113]: Netlify/Decap CMS [#5656](https://github.com/decaporg/decap-cms/issues/5656), [#5837](https://github.com/decaporg/decap-cms/issues/5837), [#5972](https://github.com/decaporg/decap-cms/issues/5972), [#6476](https://github.com/decaporg/decap-cms/issues/6476), [#6516](https://github.com/decaporg/decap-cms/issues/6516), [#6930](https://github.com/decaporg/decap-cms/issues/6930), [#6965](https://github.com/decaporg/decap-cms/issues/6965), [#7080](https://github.com/decaporg/decap-cms/issues/7080), [#7105](https://github.com/decaporg/decap-cms/issues/7105), [#7106](https://github.com/decaporg/decap-cms/issues/7106), [#7119](https://github.com/decaporg/decap-cms/issues/7119), [#7176](https://github.com/decaporg/decap-cms/issues/7176), [#7194](https://github.com/decaporg/decap-cms/issues/7194), [#7244](https://github.com/decaporg/decap-cms/issues/7244), [#7278](https://github.com/decaporg/decap-cms/issues/7278), [#7301](https://github.com/decaporg/decap-cms/issues/7301), [#7342](https://github.com/decaporg/decap-cms/issues/7342), [#7348](https://github.com/decaporg/decap-cms/issues/7348), [#7354](https://github.com/decaporg/decap-cms/issues/7354), [#7376](https://github.com/decaporg/decap-cms/issues/7376), [#7408](https://github.com/decaporg/decap-cms/issues/7408), [#7412](https://github.com/decaporg/decap-cms/issues/7412), [#7413](https://github.com/decaporg/decap-cms/issues/7413), [#7422](https://github.com/decaporg/decap-cms/issues/7422), [#7427](https://github.com/decaporg/decap-cms/issues/7427), [#7434](https://github.com/decaporg/decap-cms/issues/7434), [#7438](https://github.com/decaporg/decap-cms/issues/7438), [#7454](https://github.com/decaporg/decap-cms/issues/7454), [#7464](https://github.com/decaporg/decap-cms/issues/7464), [#7471](https://github.com/decaporg/decap-cms/issues/7471) — These `removeChild` crashes are common in React apps, likely caused by a [browser extension](https://github.com/facebook/react/issues/17256) or [Google Translate](https://github.com/facebook/react/issues/11538).
|
|
1623
|
+
[^113]: Netlify/Decap CMS [#5656](https://github.com/decaporg/decap-cms/issues/5656), [#5837](https://github.com/decaporg/decap-cms/issues/5837), [#5972](https://github.com/decaporg/decap-cms/issues/5972), [#6476](https://github.com/decaporg/decap-cms/issues/6476), [#6516](https://github.com/decaporg/decap-cms/issues/6516), [#6930](https://github.com/decaporg/decap-cms/issues/6930), [#6965](https://github.com/decaporg/decap-cms/issues/6965), [#7080](https://github.com/decaporg/decap-cms/issues/7080), [#7105](https://github.com/decaporg/decap-cms/issues/7105), [#7106](https://github.com/decaporg/decap-cms/issues/7106), [#7119](https://github.com/decaporg/decap-cms/issues/7119), [#7176](https://github.com/decaporg/decap-cms/issues/7176), [#7194](https://github.com/decaporg/decap-cms/issues/7194), [#7244](https://github.com/decaporg/decap-cms/issues/7244), [#7278](https://github.com/decaporg/decap-cms/issues/7278), [#7301](https://github.com/decaporg/decap-cms/issues/7301), [#7342](https://github.com/decaporg/decap-cms/issues/7342), [#7348](https://github.com/decaporg/decap-cms/issues/7348), [#7354](https://github.com/decaporg/decap-cms/issues/7354), [#7376](https://github.com/decaporg/decap-cms/issues/7376), [#7408](https://github.com/decaporg/decap-cms/issues/7408), [#7412](https://github.com/decaporg/decap-cms/issues/7412), [#7413](https://github.com/decaporg/decap-cms/issues/7413), [#7422](https://github.com/decaporg/decap-cms/issues/7422), [#7427](https://github.com/decaporg/decap-cms/issues/7427), [#7434](https://github.com/decaporg/decap-cms/issues/7434), [#7438](https://github.com/decaporg/decap-cms/issues/7438), [#7454](https://github.com/decaporg/decap-cms/issues/7454), [#7464](https://github.com/decaporg/decap-cms/issues/7464), [#7471](https://github.com/decaporg/decap-cms/issues/7471), [#7485](https://github.com/decaporg/decap-cms/issues/7485) — These `removeChild` crashes are common in React apps, likely caused by a [browser extension](https://github.com/facebook/react/issues/17256) or [Google Translate](https://github.com/facebook/react/issues/11538).
|
|
1619
1624
|
|
|
1620
1625
|
[^114]: Netlify/Decap CMS [#5029](https://github.com/decaporg/decap-cms/issues/5029), [#5048](https://github.com/decaporg/decap-cms/issues/5048)
|
|
1621
1626
|
|
|
@@ -1629,7 +1634,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1629
1634
|
|
|
1630
1635
|
[^119]: Netlify/Decap CMS [#5640](https://github.com/decaporg/decap-cms/issues/5640), [#6444](https://github.com/decaporg/decap-cms/issues/6444)
|
|
1631
1636
|
|
|
1632
|
-
[^120]: Netlify/Decap CMS [#2727](https://github.com/decaporg/decap-cms/issues/2727), [#4884](https://github.com/decaporg/decap-cms/issues/4884)
|
|
1637
|
+
[^120]: Netlify/Decap CMS [#2727](https://github.com/decaporg/decap-cms/issues/2727), [#4884](https://github.com/decaporg/decap-cms/issues/4884), [#6908](https://github.com/decaporg/decap-cms/discussions/6908)
|
|
1633
1638
|
|
|
1634
1639
|
[^121]: Netlify/Decap CMS [#7262](https://github.com/decaporg/decap-cms/issues/7262)
|
|
1635
1640
|
|
|
@@ -1735,7 +1740,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1735
1740
|
|
|
1736
1741
|
[^172]: Netlify/Decap CMS [#3715](https://github.com/decaporg/decap-cms/issues/3715)
|
|
1737
1742
|
|
|
1738
|
-
[^173]: Netlify/Decap CMS [#
|
|
1743
|
+
[^173]: Netlify/Decap CMS [#5317](https://github.com/decaporg/decap-cms/issues/5317)
|
|
1739
1744
|
|
|
1740
1745
|
[^174]: Netlify/Decap CMS [#6616](https://github.com/decaporg/decap-cms/issues/6616)
|
|
1741
1746
|
|
|
@@ -1759,9 +1764,9 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1759
1764
|
|
|
1760
1765
|
[^184]: Netlify/Decap CMS [#377](https://github.com/decaporg/decap-cms/issues/377)
|
|
1761
1766
|
|
|
1762
|
-
[^185]: Netlify/Decap CMS [#6203](https://github.com/decaporg/decap-cms/issues/6203), [#7417](https://github.com/decaporg/decap-cms/issues/7417)
|
|
1767
|
+
[^185]: Netlify/Decap CMS [#6203](https://github.com/decaporg/decap-cms/issues/6203), [#7417](https://github.com/decaporg/decap-cms/issues/7417), [#7451](https://github.com/decaporg/decap-cms/pull/7451)
|
|
1763
1768
|
|
|
1764
|
-
[^186]: Netlify/Decap CMS [#3454](https://github.com/decaporg/decap-cms/issues/3454), [#3585](https://github.com/decaporg/decap-cms/issues/3585), [#3651](https://github.com/decaporg/decap-cms/issues/3651), [#3885](https://github.com/decaporg/decap-cms/issues/3885), [#3962](https://github.com/decaporg/decap-cms/issues/3962), [#4037](https://github.com/decaporg/decap-cms/issues/4037), [#4143](https://github.com/decaporg/decap-cms/issues/4143), [#6585](https://github.com/decaporg/decap-cms/issues/6585), [#6664](https://github.com/decaporg/decap-cms/issues/6664), [#6665](https://github.com/decaporg/decap-cms/issues/6665), [#6739](https://github.com/decaporg/decap-cms/issues/6739), [#7243](https://github.com/decaporg/decap-cms/issues/7243), [#7379](https://github.com/decaporg/decap-cms/issues/7379), [#7469](https://github.com/decaporg/decap-cms/issues/7469)
|
|
1769
|
+
[^186]: Netlify/Decap CMS [#2368](https://github.com/decaporg/decap-cms/issues/2368), [#3454](https://github.com/decaporg/decap-cms/issues/3454), [#3585](https://github.com/decaporg/decap-cms/issues/3585), [#3651](https://github.com/decaporg/decap-cms/issues/3651), [#3885](https://github.com/decaporg/decap-cms/issues/3885), [#3962](https://github.com/decaporg/decap-cms/issues/3962), [#4037](https://github.com/decaporg/decap-cms/issues/4037), [#4143](https://github.com/decaporg/decap-cms/issues/4143), [#6585](https://github.com/decaporg/decap-cms/issues/6585), [#6664](https://github.com/decaporg/decap-cms/issues/6664), [#6665](https://github.com/decaporg/decap-cms/issues/6665), [#6739](https://github.com/decaporg/decap-cms/issues/6739), [#7243](https://github.com/decaporg/decap-cms/issues/7243), [#7379](https://github.com/decaporg/decap-cms/issues/7379), [#7469](https://github.com/decaporg/decap-cms/issues/7469)
|
|
1765
1770
|
|
|
1766
1771
|
[^187]: Netlify/Decap CMS [#1244](https://github.com/decaporg/decap-cms/issues/1244)
|
|
1767
1772
|
|
|
@@ -1783,7 +1788,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1783
1788
|
|
|
1784
1789
|
[^196]: Netlify/Decap CMS [#3057](https://github.com/decaporg/decap-cms/issues/3057), [#3260](https://github.com/decaporg/decap-cms/issues/3260) — We use Svelte though.
|
|
1785
1790
|
|
|
1786
|
-
[^197]: Netlify/Decap CMS [#3457](https://github.com/decaporg/decap-cms/issues/3457), [#3624](https://github.com/decaporg/decap-cms/issues/3624)
|
|
1791
|
+
[^197]: Netlify/Decap CMS [#3457](https://github.com/decaporg/decap-cms/issues/3457), [#3624](https://github.com/decaporg/decap-cms/issues/3624), [#6713](https://github.com/decaporg/decap-cms/discussions/6713)
|
|
1787
1792
|
|
|
1788
1793
|
[^198]: Netlify/Decap CMS [#7442](https://github.com/decaporg/decap-cms/issues/7442)
|
|
1789
1794
|
|
|
@@ -1840,3 +1845,15 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1840
1845
|
[^224]: Netlify/Decap CMS [#7352](https://github.com/decaporg/decap-cms/issues/7352)
|
|
1841
1846
|
|
|
1842
1847
|
[^225]: Netlify/Decap CMS [#7401](https://github.com/decaporg/decap-cms/issues/7401)
|
|
1848
|
+
|
|
1849
|
+
[^226]: Netlify/Decap CMS [#7031](https://github.com/decaporg/decap-cms/pull/7031)
|
|
1850
|
+
|
|
1851
|
+
[^227]: Netlify/Decap CMS [#6794](https://github.com/decaporg/decap-cms/pull/6794)
|
|
1852
|
+
|
|
1853
|
+
[^228]: Netlify/Decap CMS [#6762](https://github.com/decaporg/decap-cms/pull/6762)
|
|
1854
|
+
|
|
1855
|
+
[^229]: Netlify/Decap CMS [#6180](https://github.com/decaporg/decap-cms/issues/6180)
|
|
1856
|
+
|
|
1857
|
+
[^230]: Netlify/Decap CMS [#7486](https://github.com/decaporg/decap-cms/discussions/7486)
|
|
1858
|
+
|
|
1859
|
+
[^231]: Netlify/Decap CMS [#3704](https://github.com/decaporg/decap-cms/issues/3704)
|