diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 1287d027..2769e8c9 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -35,8 +35,8 @@
{
"fileMatch": [
"plugins/**/manifest.json",
- "tests/modules/Plugins/Mocks/manifests/*.json",
- "tests/modules/Plugins/Mocks/plugins/**/manifest.json"
+ "tests/modules/Plugins/mocks/manifests/*.json",
+ "tests/modules/Plugins/mocks/plugins/**/manifest.json"
],
"url": "/workspaces/castopod/modules/Plugins/Manifest/manifest.schema.json"
}
diff --git a/docs/src/content/docs/ar/index.mdx b/docs/src/content/docs/ar/index.mdx
index 6a2e5b5b..73af6712 100644
--- a/docs/src/content/docs/ar/index.mdx
+++ b/docs/src/content/docs/ar/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/br/index.mdx b/docs/src/content/docs/br/index.mdx
index ea851240..c9d76002 100644
--- a/docs/src/content/docs/br/index.mdx
+++ b/docs/src/content/docs/br/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/ca/getting-started/docker.mdx b/docs/src/content/docs/ca/getting-started/docker.mdx
index 47da2436..c001ff94 100644
--- a/docs/src/content/docs/ca/getting-started/docker.mdx
+++ b/docs/src/content/docs/ca/getting-started/docker.mdx
@@ -7,8 +7,8 @@ process:
- [**`castopod/castopod`**](https://hub.docker.com/r/castopod/castopod): an all
in one castopod image using nginx unit
-- [**`castopod/app`**](https://hub.docker.com/r/castopod/app): el
- paquet incloent Castopod i totes les dependències
+- [**`castopod/app`**](https://hub.docker.com/r/castopod/app): el paquet
+ incloent Castopod i totes les dependències
- [**`castopod/web-server`**](https://hub.docker.com/r/castopod/web-server): una
configuració de Nginx per a Castopod
diff --git a/docs/src/content/docs/ca/index.mdx b/docs/src/content/docs/ca/index.mdx
index d58c33e8..2ebc1efd 100644
--- a/docs/src/content/docs/ca/index.mdx
+++ b/docs/src/content/docs/ca/index.mdx
@@ -167,8 +167,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1340,8 +1339,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/da/index.mdx b/docs/src/content/docs/da/index.mdx
index baf59d03..3ab5bbe8 100644
--- a/docs/src/content/docs/da/index.mdx
+++ b/docs/src/content/docs/da/index.mdx
@@ -167,8 +167,7 @@ Veliko hvala ovim divnim ljudima
([ključ emotikona](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1340,8 +1339,7 @@ Veliko hvala ovim divnim ljudima
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/de/index.mdx b/docs/src/content/docs/de/index.mdx
index f24684b4..59bf079a 100644
--- a/docs/src/content/docs/de/index.mdx
+++ b/docs/src/content/docs/de/index.mdx
@@ -166,8 +166,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1339,8 +1338,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/el/index.mdx b/docs/src/content/docs/el/index.mdx
index d15cf157..277854de 100644
--- a/docs/src/content/docs/el/index.mdx
+++ b/docs/src/content/docs/el/index.mdx
@@ -166,8 +166,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1339,8 +1338,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/es/index.mdx b/docs/src/content/docs/es/index.mdx
index d833d105..c1dfb404 100644
--- a/docs/src/content/docs/es/index.mdx
+++ b/docs/src/content/docs/es/index.mdx
@@ -173,8 +173,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1346,8 +1345,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/eu/index.mdx b/docs/src/content/docs/eu/index.mdx
index c3769fc2..5fd178fe 100644
--- a/docs/src/content/docs/eu/index.mdx
+++ b/docs/src/content/docs/eu/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/fa/index.mdx b/docs/src/content/docs/fa/index.mdx
index 3d80dbb2..423dad6c 100644
--- a/docs/src/content/docs/fa/index.mdx
+++ b/docs/src/content/docs/fa/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/fr/index.mdx b/docs/src/content/docs/fr/index.mdx
index b951ec1b..2af1916e 100644
--- a/docs/src/content/docs/fr/index.mdx
+++ b/docs/src/content/docs/fr/index.mdx
@@ -172,8 +172,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1345,8 +1344,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
@@ -1401,16 +1399,21 @@ backers. If you'd like to help, please consider
Copyright © 2020-present, [Ad Aures](https://adaures.com/).
[release]: https://code.castopod.org/adaures/castopod/-/releases
-[release-badge]: https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
+[release-badge]:
+ https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
[license]: https://code.castopod.org/adaures/castopod/-/blob/beta/LICENSE.md
-[license-badge]: https://img.shields.io/github/license/ad-aures/castopod?color=blue
+[license-badge]:
+ https://img.shields.io/github/license/ad-aures/castopod?color=blue
[contributions]: https://code.castopod.org/adaures/castopod/-/issues
-[contributions-badge]: https://img.shields.io/badge/contributions-welcome-brightgreen.svg
+[contributions-badge]:
+ https://img.shields.io/badge/contributions-welcome-brightgreen.svg
[semantic-release]: https://github.com/semantic-release/semantic-release
-[semantic-release-badge]: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
+[semantic-release-badge]:
+ https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
[discord]: https://castopod.org/discord
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
[stars]: https://github.com/ad-aures/castopod/stargazers
-[stars-badge]: https://img.shields.io/github/stars/ad-aures/castopod?style=social
+[stars-badge]:
+ https://img.shields.io/github/stars/ad-aures/castopod?style=social
[crowdin]: https://translate.castopod.org/project/castopod
[crowdin-badge]: https://badges.crowdin.net/castopod/localized.svg
diff --git a/docs/src/content/docs/fr2/index.mdx b/docs/src/content/docs/fr2/index.mdx
index b951ec1b..2af1916e 100644
--- a/docs/src/content/docs/fr2/index.mdx
+++ b/docs/src/content/docs/fr2/index.mdx
@@ -172,8 +172,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1345,8 +1344,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
@@ -1401,16 +1399,21 @@ backers. If you'd like to help, please consider
Copyright © 2020-present, [Ad Aures](https://adaures.com/).
[release]: https://code.castopod.org/adaures/castopod/-/releases
-[release-badge]: https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
+[release-badge]:
+ https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
[license]: https://code.castopod.org/adaures/castopod/-/blob/beta/LICENSE.md
-[license-badge]: https://img.shields.io/github/license/ad-aures/castopod?color=blue
+[license-badge]:
+ https://img.shields.io/github/license/ad-aures/castopod?color=blue
[contributions]: https://code.castopod.org/adaures/castopod/-/issues
-[contributions-badge]: https://img.shields.io/badge/contributions-welcome-brightgreen.svg
+[contributions-badge]:
+ https://img.shields.io/badge/contributions-welcome-brightgreen.svg
[semantic-release]: https://github.com/semantic-release/semantic-release
-[semantic-release-badge]: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
+[semantic-release-badge]:
+ https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
[discord]: https://castopod.org/discord
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
[stars]: https://github.com/ad-aures/castopod/stargazers
-[stars-badge]: https://img.shields.io/github/stars/ad-aures/castopod?style=social
+[stars-badge]:
+ https://img.shields.io/github/stars/ad-aures/castopod?style=social
[crowdin]: https://translate.castopod.org/project/castopod
[crowdin-badge]: https://badges.crowdin.net/castopod/localized.svg
diff --git a/docs/src/content/docs/gd/index.mdx b/docs/src/content/docs/gd/index.mdx
index 3d80dbb2..423dad6c 100644
--- a/docs/src/content/docs/gd/index.mdx
+++ b/docs/src/content/docs/gd/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/gl/index.mdx b/docs/src/content/docs/gl/index.mdx
index 3d80dbb2..423dad6c 100644
--- a/docs/src/content/docs/gl/index.mdx
+++ b/docs/src/content/docs/gl/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/id/index.mdx b/docs/src/content/docs/id/index.mdx
index 6e433623..72024f37 100644
--- a/docs/src/content/docs/id/index.mdx
+++ b/docs/src/content/docs/id/index.mdx
@@ -166,8 +166,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1339,8 +1338,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/it/index.mdx b/docs/src/content/docs/it/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/it/index.mdx
+++ b/docs/src/content/docs/it/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/ja/index.mdx b/docs/src/content/docs/ja/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/ja/index.mdx
+++ b/docs/src/content/docs/ja/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/kk/index.mdx b/docs/src/content/docs/kk/index.mdx
index 3d80dbb2..423dad6c 100644
--- a/docs/src/content/docs/kk/index.mdx
+++ b/docs/src/content/docs/kk/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/ko/index.mdx b/docs/src/content/docs/ko/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/ko/index.mdx
+++ b/docs/src/content/docs/ko/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/nl/index.mdx b/docs/src/content/docs/nl/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/nl/index.mdx
+++ b/docs/src/content/docs/nl/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/nn-no/index.mdx b/docs/src/content/docs/nn-no/index.mdx
index f8f20400..e4b37a1b 100644
--- a/docs/src/content/docs/nn-no/index.mdx
+++ b/docs/src/content/docs/nn-no/index.mdx
@@ -170,8 +170,7 @@ Mange takk til dei flotte folka på
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1367,8 +1366,7 @@ Mange takk til dei flotte folka på
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/oc/index.mdx b/docs/src/content/docs/oc/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/oc/index.mdx
+++ b/docs/src/content/docs/oc/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/pl/index.mdx b/docs/src/content/docs/pl/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/pl/index.mdx
+++ b/docs/src/content/docs/pl/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/pt-br/index.mdx b/docs/src/content/docs/pt-br/index.mdx
index b9a2cc4d..aed0d7a4 100644
--- a/docs/src/content/docs/pt-br/index.mdx
+++ b/docs/src/content/docs/pt-br/index.mdx
@@ -169,8 +169,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1342,8 +1341,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/pt/index.mdx b/docs/src/content/docs/pt/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/pt/index.mdx
+++ b/docs/src/content/docs/pt/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/ro/index.mdx b/docs/src/content/docs/ro/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/ro/index.mdx
+++ b/docs/src/content/docs/ro/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/ru/index.mdx b/docs/src/content/docs/ru/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/ru/index.mdx
+++ b/docs/src/content/docs/ru/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/sk/index.mdx b/docs/src/content/docs/sk/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/sk/index.mdx
+++ b/docs/src/content/docs/sk/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/sr-latn/index.mdx b/docs/src/content/docs/sr-latn/index.mdx
index baf59d03..3ab5bbe8 100644
--- a/docs/src/content/docs/sr-latn/index.mdx
+++ b/docs/src/content/docs/sr-latn/index.mdx
@@ -167,8 +167,7 @@ Veliko hvala ovim divnim ljudima
([ključ emotikona](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1340,8 +1339,7 @@ Veliko hvala ovim divnim ljudima
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/sv/index.mdx b/docs/src/content/docs/sv/index.mdx
index dbd74fec..0875f240 100644
--- a/docs/src/content/docs/sv/index.mdx
+++ b/docs/src/content/docs/sv/index.mdx
@@ -166,8 +166,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1339,8 +1338,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/uk/index.mdx b/docs/src/content/docs/uk/index.mdx
index 3f1ec043..6b94c044 100644
--- a/docs/src/content/docs/uk/index.mdx
+++ b/docs/src/content/docs/uk/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1306,8 +1305,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/zh-hans/index.mdx b/docs/src/content/docs/zh-hans/index.mdx
index d14369b0..962f8c3a 100644
--- a/docs/src/content/docs/zh-hans/index.mdx
+++ b/docs/src/content/docs/zh-hans/index.mdx
@@ -142,8 +142,7 @@ Castopod 已经通过了一项行为准则,并希望所有的参与者都能
感谢这些了不起的人([表情符号键](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1315,8 +1314,7 @@ Castopod 已经通过了一项行为准则,并希望所有的参与者都能
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/docs/src/content/docs/zh-hant/index.mdx b/docs/src/content/docs/zh-hant/index.mdx
index c3769fc2..5fd178fe 100644
--- a/docs/src/content/docs/zh-hant/index.mdx
+++ b/docs/src/content/docs/zh-hant/index.mdx
@@ -165,8 +165,7 @@ Thanks goes to these wonderful people
([emoji key](https://allcontributors.org/docs/en/emoji-key)):
{/* ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section */}
-{/* prettier-ignore-start */}
-{/* markdownlint-disable */}
+{/* prettier-ignore-start */} {/* markdownlint-disable */}
@@ -1338,8 +1337,7 @@ Thanks goes to these wonderful people
-{/* markdownlint-restore */}
-{/* prettier-ignore-end */}
+{/* markdownlint-restore */} {/* prettier-ignore-end */}
{/* ALL-CONTRIBUTORS-LIST:END */}
diff --git a/modules/Plugins/Manifest/Field.php b/modules/Plugins/Manifest/Field.php
index fac152f3..74f0fde3 100644
--- a/modules/Plugins/Manifest/Field.php
+++ b/modules/Plugins/Manifest/Field.php
@@ -5,8 +5,8 @@ declare(strict_types=1);
namespace Modules\Plugins\Manifest;
/**
- * @property 'text'|'email'|'url'|'markdown'|'number'|'switch' $type
* @property string $key
+ * @property 'text'|'email'|'url'|'markdown'|'number'|'switch' $type
* @property string $label
* @property string $hint
* @property string $helper
diff --git a/modules/Plugins/Manifest/Fields.php b/modules/Plugins/Manifest/Fields.php
new file mode 100644
index 00000000..08db788d
--- /dev/null
+++ b/modules/Plugins/Manifest/Fields.php
@@ -0,0 +1,16 @@
+ $fields) {
+ $newFields = [];
+ foreach ($fields as $fieldKey => $field) {
+ $field['key'] = $fieldKey;
+ $newFields[] = $field;
+ }
+
+ $newData[$key] = $newFields;
+ }
+
+ parent::loadData($newData);
+ }
}
diff --git a/modules/Plugins/Manifest/manifest.schema.json b/modules/Plugins/Manifest/manifest.schema.json
index 9d1629f0..0d99b56d 100644
--- a/modules/Plugins/Manifest/manifest.schema.json
+++ b/modules/Plugins/Manifest/manifest.schema.json
@@ -101,28 +101,13 @@
"type": "object",
"properties": {
"general": {
- "type": "array",
- "items": {
- "$ref": "#/$defs/field"
- },
- "minItems": 1,
- "uniqueItems": true
+ "$ref": "#/$defs/fields"
},
"podcast": {
- "type": "array",
- "items": {
- "$ref": "#/$defs/field"
- },
- "minItems": 1,
- "uniqueItems": true
+ "$ref": "#/$defs/fields"
},
"episode": {
- "type": "array",
- "items": {
- "$ref": "#/$defs/field"
- },
- "minItems": 1,
- "uniqueItems": true
+ "$ref": "#/$defs/fields"
}
}
},
@@ -170,24 +155,12 @@
}
}
},
- "section": {
+ "fields": {
"type": "object",
- "properties": {
- "title": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "fields": {
- "type": "array",
- "items": {
- "$ref": "#/$defs/field"
- },
- "minItems": 1,
- "uniqueItems": true
- }
- }
+ "patternProperties": {
+ "^[A-Za-z]+[\\w\\-\\:\\.]*$": { "$ref": "#/$defs/field" }
+ },
+ "additionalProperties": false
},
"field": {
"type": "object",
@@ -209,10 +182,6 @@
],
"default": "text"
},
- "key": {
- "type": "string",
- "pattern": "^[A-Za-z]+[\\w\\-\\:\\.]*$"
- },
"label": {
"type": "string"
},
@@ -234,7 +203,7 @@
"uniqueItems": true
}
},
- "required": ["key", "label"],
+ "required": ["label"],
"additionalProperties": false,
"allOf": [
{ "$ref": "#/$defs/field-multiple-implies-options-is-required" }
diff --git a/tests/modules/Plugins/mocks/manifests/manifest-full-valid.json b/tests/modules/Plugins/mocks/manifests/manifest-full-valid.json
index 28434aa4..0d8a9f60 100644
--- a/tests/modules/Plugins/mocks/manifests/manifest-full-valid.json
+++ b/tests/modules/Plugins/mocks/manifests/manifest-full-valid.json
@@ -14,10 +14,9 @@
"keywords": ["seo", "analytics"],
"hooks": ["rssAfterChannel"],
"settings": {
- "general": [
- {
+ "general": {
+ "name": {
"type": "radio-group",
- "key": "name",
"label": "Name",
"options": [
{ "label": "Foo", "value": "foo", "hint": "This is a hint." },
@@ -25,35 +24,29 @@
{ "label": "Baz", "value": "baz" }
]
},
- {
+ "email": {
"type": "email",
- "key": "email",
"label": "Email"
},
- {
+ "url": {
"type": "url",
- "key": "url",
"label": "Your website URL"
},
- {
+ "toggler": {
"type": "toggler",
- "key": "toggler",
"label": "Toggle this?"
},
- {
+ "number": {
"type": "number",
- "key": "number",
"label": "Number"
},
- {
+ "datetime": {
"type": "datetime",
- "key": "datetime",
"label": "Enter a date",
"optional": true
},
- {
+ "select": {
"type": "select",
- "key": "select",
"label": "Select something",
"options": [
{
@@ -70,9 +63,8 @@
}
]
},
- {
+ "select-multiple": {
"type": "select-multiple",
- "key": "select-multiple",
"label": "Select multiple things",
"options": [
{
@@ -89,9 +81,8 @@
}
]
},
- {
+ "radio-group": {
"type": "radio-group",
- "key": "radio-group",
"label": "Radio Group",
"helper": "This is a helper.",
"options": [
@@ -109,35 +100,31 @@
}
]
},
- {
+ "textarea": {
"type": "textarea",
- "key": "texting",
"label": "Your text",
"hint": "This is a hint."
},
- {
+ "markdown": {
"type": "markdown",
- "key": "hello",
- "label": "Name Podcast",
+ "label": "Markdown",
"hint": "This is a hint.",
"optional": true
}
- ],
- "podcast": [
- {
+ },
+ "podcast": {
+ "name": {
"type": "text",
- "key": "name",
"label": "Name Podcast",
"hint": "This is a hint."
}
- ],
- "episode": [
- {
+ },
+ "episode": {
+ "name": {
"type": "text",
- "key": "name",
"label": "Name Episode",
"helper": "This is a helper."
}
- ]
+ }
}
}