Big bang/webgune berria (#18)
* chore: netlify deployments plugina kentzen du * chore: Strapi berria instalatzen du * feat: astro instalatzen du * chore: cypress instalatzen du * feat: back eta front konektatzen ditu * feat: server side rendering egiten du * chore: Strapin enterprise edition flagak kentzen ditu * feat: euskara sartzen du * chore: Strapi bertsioa igotzen du * feat: preview modua sortzen du ingurune bariableen bidez * aurreko commitarekin doa * fix: cypress konpontzen du * chore: Strapi bertsioa igotzen du * feat: ekintza back-ean sortzen du * feat: zikloa eta erakundea sortzen ditu * feat: erakundeen kudeaketa hobetzen du * chore: pnpm erabiltzen du * feat: Strapi bertsioa igotzen du * ekintza sortzen du eta zerbitzuak eguneratzen ditu * chore: graphql erabiltzen du populazioa ekiditeko * chore: collection erabiltzen du ekintzetarako * chore: bertsioak igotzen ditu * chore: Astro bertsioa igotzen du * chore: Strapi bertsioa igotzen du * feat: home-a hasten du * feat: zig zag separadorea sortzen du * feat: zig zaga doitzen du * feat: heroa doitzen du * feat: agenda sortzen du * feat: agenda eta izan labazkide atalak konektatzen ditu * feat: home-aren edukia sortzen du * chore: app.js sartzen du WTF * feat: header-a sortzen du * feat: card-a hobetzen du * feat: footer-a sortzen du * feat: ekintzen zerrenda erakusten du * feat: zikloaren bista sortzen du * fix: header-aren estekak konpontzen ditu * chore: remove unused code * chore: components directorioa kentzen du * chore: typescript konfigurazioa hobetzen du * chore: views path-a sortzen du * feat: zikloaren deskribapena erakusten du * feat: ekintzaren bista sortzen du * feat: zig zag marra erakusten du * ignore: comment * feat: hitzordua erakusten du * feat: zikloa erakusten du * feat: Waveko erroreak errepasatzen ditu * feat: Wave birpasatzen du * feat: zerrendan irudia erakusten du * feat: karga optimizatzen du * feat: irudien formatuak kontuan hartzen ditu * feat: zikloan ekintza irudiak erakusten ditu * feat: ekintza zerrenda atontzen du * feat: header-eko estekak markatzen ditu * feat: irudi estela erakusten du * feat: responsive-a hobetzen du * feat: orri basikoa sortzen du * feat: hasiera responsive egiten du * feat: overflow konpontzen du * feat: bug-a uzten du LOL * feat: irudi estela mugikorrean aktibatzen du * feat: orri basikoa eta ekintza mugikorrean jartzen ditu * feat: mugikor menua sortzen du * feat: mugikor menua amaitzen du * feat: build estatikoa sortzen du * feat: sitemap-a sortzen du * feat: rss feed-a sortzen du * chore: ingurune aldagaiak sortzen ditu * chore: public-proxy komandoa sortzen du * feat: irudiak webp formatuan jartzen ditu * fix: irudiak erakusten ditu ekintzen zerrendan * feat: ekintza zerrendaren irudia animatzen du * refactor: extract functions * fix: animazioa konpontzen du * feat: irudi estela hobetzen du * chore: prerender aldagaiak kentzen ditu * chore: SASS warning-ak kentzen ditu * feat: ziklo eta ekintzetan H1 ezartzen du * feat: slideshow-a sortzen du * feat: ekintzak hitzorduan oinarrituta filtratzen ditu * feat: hitzorduen arabera filtratzen du eta moment kentzen du * feat: titulua aldatzen du * feat: menua eguneratzen du * feat: parte hartun deskribapena sortzen du * feat: Cloudinary konfiguratzen du * fix: cloudinary konfigurazioa konpontzen du * feat: erositako fonteak jartzen ditu
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,4 +1,2 @@
|
|||||||
node_modules
|
node_modules
|
||||||
build
|
build
|
||||||
package-lock.json
|
|
||||||
.yarn/install-state.gz
|
|
||||||
|
|||||||
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
@@ -2,7 +2,7 @@
|
|||||||
{
|
{
|
||||||
"editor.formatOnSave": true,
|
"editor.formatOnSave": true,
|
||||||
"typescript.tsdk": "node_modules/typescript/lib",
|
"typescript.tsdk": "node_modules/typescript/lib",
|
||||||
"importSorter.generalConfiguration.sortOnBeforeSave": true,
|
"importSorter.generalConfiguration.sortOnBeforeSave": false,
|
||||||
"importSorter.sortConfiguration.customOrderingRules.rules": [
|
"importSorter.sortConfiguration.customOrderingRules.rules": [
|
||||||
{
|
{
|
||||||
"type": "importMember",
|
"type": "importMember",
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
root = true
|
|
||||||
|
|
||||||
[*]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
end_of_line = lf
|
|
||||||
charset = utf-8
|
|
||||||
trim_trailing_whitespace = true
|
|
||||||
insert_final_newline = true
|
|
||||||
|
|
||||||
[{package.json,*.yml}]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
|
|
||||||
[*.md]
|
|
||||||
trim_trailing_whitespace = false
|
|
||||||
@@ -1,4 +1,14 @@
|
|||||||
HOST=0.0.0.0
|
HOST=0.0.0.0
|
||||||
PORT=1337
|
PORT=1337
|
||||||
DATABASE_FILENAME=database/migrations/development.db
|
APP_KEYS="toBeModified1,toBeModified2"
|
||||||
NETLIFY_DEPLOYMENTS_PLUGIN_ACCESS_TOKEN="<netlify access token>"
|
API_TOKEN_SALT=tobemodified
|
||||||
|
ADMIN_JWT_SECRET=tobemodified
|
||||||
|
TRANSFER_TOKEN_SALT=tobemodified
|
||||||
|
JWT_SECRET=tobemodified
|
||||||
|
|
||||||
|
FLAG_PROMOTE_EE=false
|
||||||
|
FLAG_NPS=false
|
||||||
|
|
||||||
|
CLOUDINARY_NAME=your_cloud_name
|
||||||
|
CLOUDINARY_KEY=your_api_key
|
||||||
|
CLOUDINARY_SECRET=your_api_secret
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
.cache
|
|
||||||
build
|
|
||||||
**/node_modules/**
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"parser": "babel-eslint",
|
|
||||||
"extends": "eslint:recommended",
|
|
||||||
"env": {
|
|
||||||
"commonjs": true,
|
|
||||||
"es6": true,
|
|
||||||
"node": true,
|
|
||||||
"browser": false
|
|
||||||
},
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaFeatures": {
|
|
||||||
"experimentalObjectRestSpread": true,
|
|
||||||
"jsx": false
|
|
||||||
},
|
|
||||||
"sourceType": "module"
|
|
||||||
},
|
|
||||||
"globals": {
|
|
||||||
"strapi": true
|
|
||||||
},
|
|
||||||
"rules": {
|
|
||||||
"indent": ["error", 2, { "SwitchCase": 1 }],
|
|
||||||
"linebreak-style": ["error", "unix"],
|
|
||||||
"no-console": 0,
|
|
||||||
"quotes": ["error", "single"],
|
|
||||||
"semi": ["error", "always"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
21
back/.gitignore
vendored
21
back/.gitignore
vendored
@@ -82,6 +82,8 @@ ssl
|
|||||||
nbproject
|
nbproject
|
||||||
public/uploads/*
|
public/uploads/*
|
||||||
!public/uploads/.gitkeep
|
!public/uploads/.gitkeep
|
||||||
|
.tsbuildinfo
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
############################
|
############################
|
||||||
# Node.js
|
# Node.js
|
||||||
@@ -95,11 +97,24 @@ results
|
|||||||
node_modules
|
node_modules
|
||||||
.node_history
|
.node_history
|
||||||
|
|
||||||
|
############################
|
||||||
|
# Package managers
|
||||||
|
############################
|
||||||
|
|
||||||
|
.yarn/*
|
||||||
|
!.yarn/cache
|
||||||
|
!.yarn/unplugged
|
||||||
|
!.yarn/patches
|
||||||
|
!.yarn/releases
|
||||||
|
!.yarn/sdks
|
||||||
|
!.yarn/versions
|
||||||
|
.pnp.*
|
||||||
|
yarn-error.log
|
||||||
|
|
||||||
############################
|
############################
|
||||||
# Tests
|
# Tests
|
||||||
############################
|
############################
|
||||||
|
|
||||||
testApp
|
|
||||||
coverage
|
coverage
|
||||||
|
|
||||||
############################
|
############################
|
||||||
@@ -109,6 +124,8 @@ coverage
|
|||||||
.env
|
.env
|
||||||
license.txt
|
license.txt
|
||||||
exports
|
exports
|
||||||
*.cache
|
.strapi
|
||||||
|
dist
|
||||||
build
|
build
|
||||||
.strapi-updater.json
|
.strapi-updater.json
|
||||||
|
.strapi-cloud.json
|
||||||
@@ -2,21 +2,21 @@
|
|||||||
* This file was automatically generated by Strapi.
|
* This file was automatically generated by Strapi.
|
||||||
* Any modifications made will be discarded.
|
* Any modifications made will be discarded.
|
||||||
*/
|
*/
|
||||||
|
import strapiCloud from "@strapi/plugin-cloud/strapi-admin";
|
||||||
import graphql from "@strapi/plugin-graphql/strapi-admin";
|
import graphql from "@strapi/plugin-graphql/strapi-admin";
|
||||||
import i18N from "@strapi/plugin-i18n/strapi-admin";
|
|
||||||
import usersPermissions from "@strapi/plugin-users-permissions/strapi-admin";
|
import usersPermissions from "@strapi/plugin-users-permissions/strapi-admin";
|
||||||
import netlifyDeployments from "strapi-plugin-netlify-deployments/strapi-admin";
|
import iconsField from "strapi-plugin-icons-field/strapi-admin";
|
||||||
import { renderAdmin } from "@strapi/strapi/admin";
|
import { renderAdmin } from "@strapi/strapi/admin";
|
||||||
|
|
||||||
import customisations from "../../src/admin/app.js";
|
import customisations from "../../src/admin/app.ts";
|
||||||
|
|
||||||
renderAdmin(document.getElementById("strapi"), {
|
renderAdmin(document.getElementById("strapi"), {
|
||||||
customisations,
|
customisations,
|
||||||
|
|
||||||
plugins: {
|
plugins: {
|
||||||
|
"strapi-cloud": strapiCloud,
|
||||||
graphql: graphql,
|
graphql: graphql,
|
||||||
i18n: i18N,
|
|
||||||
"users-permissions": usersPermissions,
|
"users-permissions": usersPermissions,
|
||||||
"netlify-deployments": netlifyDeployments,
|
"icons-field": iconsField,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<!--
|
<!--
|
||||||
This file was automatically generated by Strapi.
|
This file was automatically generated by Strapi.
|
||||||
@@ -58,5 +58,6 @@ Any modifications made will be discarded.
|
|||||||
</div>
|
</div>
|
||||||
</div></noscript
|
</div></noscript
|
||||||
>
|
>
|
||||||
|
<script type="module" src="/.strapi/client/app.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
61
back/README.md
Normal file
61
back/README.md
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
# 🚀 Getting started with Strapi
|
||||||
|
|
||||||
|
Strapi comes with a full featured [Command Line Interface](https://docs.strapi.io/dev-docs/cli) (CLI) which lets you scaffold and manage your project in seconds.
|
||||||
|
|
||||||
|
### `develop`
|
||||||
|
|
||||||
|
Start your Strapi application with autoReload enabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-develop)
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run develop
|
||||||
|
# or
|
||||||
|
yarn develop
|
||||||
|
```
|
||||||
|
|
||||||
|
### `start`
|
||||||
|
|
||||||
|
Start your Strapi application with autoReload disabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-start)
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run start
|
||||||
|
# or
|
||||||
|
yarn start
|
||||||
|
```
|
||||||
|
|
||||||
|
### `build`
|
||||||
|
|
||||||
|
Build your admin panel. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-build)
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run build
|
||||||
|
# or
|
||||||
|
yarn build
|
||||||
|
```
|
||||||
|
|
||||||
|
## ⚙️ Deployment
|
||||||
|
|
||||||
|
Strapi gives you many possible deployment options for your project including [Strapi Cloud](https://cloud.strapi.io). Browse the [deployment section of the documentation](https://docs.strapi.io/dev-docs/deployment) to find the best solution for your use case.
|
||||||
|
|
||||||
|
```
|
||||||
|
yarn strapi deploy
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📚 Learn more
|
||||||
|
|
||||||
|
- [Resource center](https://strapi.io/resource-center) - Strapi resource center.
|
||||||
|
- [Strapi documentation](https://docs.strapi.io) - Official Strapi documentation.
|
||||||
|
- [Strapi tutorials](https://strapi.io/tutorials) - List of tutorials made by the core team and the community.
|
||||||
|
- [Strapi blog](https://strapi.io/blog) - Official Strapi blog containing articles made by the Strapi team and the community.
|
||||||
|
- [Changelog](https://strapi.io/changelog) - Find out about the Strapi product updates, new features and general improvements.
|
||||||
|
|
||||||
|
Feel free to check out the [Strapi GitHub repository](https://github.com/strapi/strapi). Your feedback and contributions are welcome!
|
||||||
|
|
||||||
|
## ✨ Community
|
||||||
|
|
||||||
|
- [Discord](https://discord.strapi.io) - Come chat with the Strapi community including the core team.
|
||||||
|
- [Forum](https://forum.strapi.io/) - Place to discuss, ask questions and find answers, show your Strapi project and get feedback or just talk with other Community members.
|
||||||
|
- [Awesome Strapi](https://github.com/strapi/awesome-strapi) - A curated list of awesome things related to Strapi.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<sub>🤫 Psst! [Strapi is hiring](https://strapi.io/careers).</sub>
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
auth: {
|
|
||||||
secret: env("ADMIN_JWT_SECRET", "7ac8d91e1521dcac33d2a5105d9f828f"),
|
|
||||||
},
|
|
||||||
apiToken: {
|
|
||||||
salt: env("API_TOKEN_SALT", "4444a34644486306e97051f610dfdae4"),
|
|
||||||
},
|
|
||||||
transfer: {
|
|
||||||
token: {
|
|
||||||
salt: env("TRANSFER_SALT", "NDDFL8BZi0QK5oYDbRgNow=="),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
url: "/kudeatu",
|
|
||||||
});
|
|
||||||
17
back/config/admin.ts
Normal file
17
back/config/admin.ts
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
export default ({ env }) => ({
|
||||||
|
auth: {
|
||||||
|
secret: env('ADMIN_JWT_SECRET'),
|
||||||
|
},
|
||||||
|
apiToken: {
|
||||||
|
salt: env('API_TOKEN_SALT'),
|
||||||
|
},
|
||||||
|
transfer: {
|
||||||
|
token: {
|
||||||
|
salt: env('TRANSFER_TOKEN_SALT'),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
flags: {
|
||||||
|
nps: env.bool('FLAG_NPS', true),
|
||||||
|
promoteEE: env.bool('FLAG_PROMOTE_EE', true),
|
||||||
|
},
|
||||||
|
});
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
module.exports = {
|
export default {
|
||||||
rest: {
|
rest: {
|
||||||
defaultLimit: 25,
|
defaultLimit: 25,
|
||||||
maxLimit: 100,
|
maxLimit: 100,
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
const path = require('path');
|
|
||||||
|
|
||||||
module.exports = ({ env }) => ({
|
|
||||||
connection: {
|
|
||||||
client: 'sqlite',
|
|
||||||
connection: {
|
|
||||||
filename: path.join(__dirname, '..', env('DATABASE_FILENAME', '.tmp/data.db')),
|
|
||||||
},
|
|
||||||
useNullAsDefault: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
60
back/config/database.ts
Normal file
60
back/config/database.ts
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
import path from 'path';
|
||||||
|
|
||||||
|
export default ({ env }) => {
|
||||||
|
const client = env('DATABASE_CLIENT', 'sqlite');
|
||||||
|
|
||||||
|
const connections = {
|
||||||
|
mysql: {
|
||||||
|
connection: {
|
||||||
|
host: env('DATABASE_HOST', 'localhost'),
|
||||||
|
port: env.int('DATABASE_PORT', 3306),
|
||||||
|
database: env('DATABASE_NAME', 'strapi'),
|
||||||
|
user: env('DATABASE_USERNAME', 'strapi'),
|
||||||
|
password: env('DATABASE_PASSWORD', 'strapi'),
|
||||||
|
ssl: env.bool('DATABASE_SSL', false) && {
|
||||||
|
key: env('DATABASE_SSL_KEY', undefined),
|
||||||
|
cert: env('DATABASE_SSL_CERT', undefined),
|
||||||
|
ca: env('DATABASE_SSL_CA', undefined),
|
||||||
|
capath: env('DATABASE_SSL_CAPATH', undefined),
|
||||||
|
cipher: env('DATABASE_SSL_CIPHER', undefined),
|
||||||
|
rejectUnauthorized: env.bool('DATABASE_SSL_REJECT_UNAUTHORIZED', true),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
pool: { min: env.int('DATABASE_POOL_MIN', 2), max: env.int('DATABASE_POOL_MAX', 10) },
|
||||||
|
},
|
||||||
|
postgres: {
|
||||||
|
connection: {
|
||||||
|
connectionString: env('DATABASE_URL'),
|
||||||
|
host: env('DATABASE_HOST', 'localhost'),
|
||||||
|
port: env.int('DATABASE_PORT', 5432),
|
||||||
|
database: env('DATABASE_NAME', 'strapi'),
|
||||||
|
user: env('DATABASE_USERNAME', 'strapi'),
|
||||||
|
password: env('DATABASE_PASSWORD', 'strapi'),
|
||||||
|
ssl: env.bool('DATABASE_SSL', false) && {
|
||||||
|
key: env('DATABASE_SSL_KEY', undefined),
|
||||||
|
cert: env('DATABASE_SSL_CERT', undefined),
|
||||||
|
ca: env('DATABASE_SSL_CA', undefined),
|
||||||
|
capath: env('DATABASE_SSL_CAPATH', undefined),
|
||||||
|
cipher: env('DATABASE_SSL_CIPHER', undefined),
|
||||||
|
rejectUnauthorized: env.bool('DATABASE_SSL_REJECT_UNAUTHORIZED', true),
|
||||||
|
},
|
||||||
|
schema: env('DATABASE_SCHEMA', 'public'),
|
||||||
|
},
|
||||||
|
pool: { min: env.int('DATABASE_POOL_MIN', 2), max: env.int('DATABASE_POOL_MAX', 10) },
|
||||||
|
},
|
||||||
|
sqlite: {
|
||||||
|
connection: {
|
||||||
|
filename: path.join(__dirname, '..', '..', env('DATABASE_FILENAME', '.tmp/data.db')),
|
||||||
|
},
|
||||||
|
useNullAsDefault: true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
return {
|
||||||
|
connection: {
|
||||||
|
client,
|
||||||
|
...connections[client],
|
||||||
|
acquireConnectionTimeout: env.int('DATABASE_CONNECTION_TIMEOUT', 60000),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
};
|
||||||
15
back/config/env/production/database.js
vendored
15
back/config/env/production/database.js
vendored
@@ -1,15 +0,0 @@
|
|||||||
const path = require("path");
|
|
||||||
|
|
||||||
module.exports = ({ env }) => ({
|
|
||||||
connection: {
|
|
||||||
client: "sqlite",
|
|
||||||
connection: {
|
|
||||||
filename: path.join(
|
|
||||||
__dirname,
|
|
||||||
"..",
|
|
||||||
env("DATABASE_FILENAME", "./data.db")
|
|
||||||
),
|
|
||||||
},
|
|
||||||
useNullAsDefault: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
16
back/config/env/production/plugins.js
vendored
16
back/config/env/production/plugins.js
vendored
@@ -1,16 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
upload: {
|
|
||||||
config: {
|
|
||||||
provider: "cloudinary",
|
|
||||||
providerOptions: {
|
|
||||||
cloud_name: env("CLOUDINARY_NAME"),
|
|
||||||
api_key: env("CLOUDINARY_KEY"),
|
|
||||||
api_secret: env("CLOUDINARY_SECRET"),
|
|
||||||
},
|
|
||||||
actionOptions: {
|
|
||||||
upload: {},
|
|
||||||
delete: {},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
5
back/config/env/production/server.js
vendored
5
back/config/env/production/server.js
vendored
@@ -1,5 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
url: env("PUBLIC_URL", "https://vervet-big-dassie.ngrok-free.app"),
|
|
||||||
host: env("HOST", "0.0.0.0"),
|
|
||||||
port: env.int("PORT", 1337),
|
|
||||||
});
|
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
module.exports = [
|
export default [
|
||||||
|
"strapi::logger",
|
||||||
"strapi::errors",
|
"strapi::errors",
|
||||||
{
|
{
|
||||||
name: "strapi::security",
|
name: "strapi::security",
|
||||||
@@ -28,9 +29,9 @@ module.exports = [
|
|||||||
},
|
},
|
||||||
"strapi::cors",
|
"strapi::cors",
|
||||||
"strapi::poweredBy",
|
"strapi::poweredBy",
|
||||||
"strapi::logger",
|
|
||||||
"strapi::query",
|
"strapi::query",
|
||||||
"strapi::body",
|
"strapi::body",
|
||||||
|
"strapi::session",
|
||||||
"strapi::favicon",
|
"strapi::favicon",
|
||||||
"strapi::public",
|
"strapi::public",
|
||||||
];
|
];
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
upload: {
|
|
||||||
config: {
|
|
||||||
provider: "cloudinary",
|
|
||||||
providerOptions: {
|
|
||||||
cloud_name: env("CLOUDINARY_NAME"),
|
|
||||||
api_key: env("CLOUDINARY_KEY"),
|
|
||||||
api_secret: env("CLOUDINARY_SECRET"),
|
|
||||||
},
|
|
||||||
actionOptions: {
|
|
||||||
upload: {},
|
|
||||||
delete: {},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
graphql: {
|
|
||||||
config: {
|
|
||||||
endpoint: "/graphql",
|
|
||||||
shadowCRUD: true,
|
|
||||||
playgroundAlways: false,
|
|
||||||
depthLimit: 7,
|
|
||||||
amountLimit: 100,
|
|
||||||
apolloServer: {
|
|
||||||
introspection: true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"netlify-deployments": {
|
|
||||||
enabled: true,
|
|
||||||
config: {
|
|
||||||
accessToken: process.env.NETLIFY_DEPLOYMENTS_PLUGIN_ACCESS_TOKEN,
|
|
||||||
sites: [
|
|
||||||
{
|
|
||||||
name: "laba-webgunea",
|
|
||||||
id: "3e9ed70d-2f4b-4152-9aaf-1129570d01b4",
|
|
||||||
buildHook:
|
|
||||||
"https://api.netlify.com/build_hooks/61e338c09f4ef3bf644f86db",
|
|
||||||
branch: "main", // optional
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
51
back/config/plugins.ts
Normal file
51
back/config/plugins.ts
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
export default () => ({
|
||||||
|
upload: {
|
||||||
|
config: {
|
||||||
|
provider: "cloudinary",
|
||||||
|
|
||||||
|
providerOptions: {
|
||||||
|
cloud_name: process.env.CLOUDINARY_NAME,
|
||||||
|
api_key: process.env.CLOUDINARY_KEY,
|
||||||
|
api_secret: process.env.CLOUDINARY_SECRET,
|
||||||
|
},
|
||||||
|
|
||||||
|
actionOptions: {
|
||||||
|
upload: {},
|
||||||
|
delete: {},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"icons-field": {
|
||||||
|
enabled: true,
|
||||||
|
config: {
|
||||||
|
icons: [
|
||||||
|
{
|
||||||
|
name: "bonbilla",
|
||||||
|
svg: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2m-3-3h6c.55 0 1-.45 1-1s-.45-1-1-1H9c-.55 0-1 .45-1 1s.45 1 1 1m3-17C7.86 2 4.5 5.36 4.5 9.5c0 3.82 2.66 5.86 3.77 6.5h7.46c1.11-.64 3.77-2.68 3.77-6.5C19.5 5.36 16.14 2 12 2"/></svg>',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "arkatza",
|
||||||
|
svg: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75zM5.92 19H5v-.92l9.06-9.06l.92.92zM20.71 5.63l-2.34-2.34c-.2-.2-.45-.29-.71-.29s-.51.1-.7.29l-1.83 1.83l3.75 3.75l1.83-1.83a.996.996 0 0 0 0-1.41"/></svg>',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "sobrea",
|
||||||
|
svg: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m-.4 4.25l-6.54 4.09c-.65.41-1.47.41-2.12 0L4.4 8.25a.85.85 0 1 1 .9-1.44L12 11l6.7-4.19a.85.85 0 1 1 .9 1.44"/></svg>',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"webp-converter": {
|
||||||
|
enabled: true,
|
||||||
|
|
||||||
|
config: {
|
||||||
|
// mimeTypes that converts to WebP. Default is ['image/png', 'image/jpeg', 'image/jpg']
|
||||||
|
|
||||||
|
mimeTypes: undefined,
|
||||||
|
|
||||||
|
options: {
|
||||||
|
// WebP options: https://sharp.pixelplumbing.com/api-output#webp
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
host: env("HOST", "0.0.0.0"),
|
|
||||||
port: env.int("PORT", 1337),
|
|
||||||
});
|
|
||||||
7
back/config/server.ts
Normal file
7
back/config/server.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
export default ({ env }) => ({
|
||||||
|
host: env("HOST", "0.0.0.0"),
|
||||||
|
port: env.int("PORT", 1337),
|
||||||
|
app: {
|
||||||
|
keys: env.array("APP_KEYS"),
|
||||||
|
},
|
||||||
|
});
|
||||||
Binary file not shown.
BIN
back/favicon.ico
BIN
back/favicon.ico
Binary file not shown.
|
Before Width: | Height: | Size: 3.6 KiB |
BIN
back/favicon.png
Normal file
BIN
back/favicon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 497 B |
@@ -2,34 +2,44 @@
|
|||||||
"name": "back",
|
"name": "back",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Laba webgunerako kudeaketa",
|
"description": "A Strapi application",
|
||||||
"license": "MIT",
|
|
||||||
"author": {
|
|
||||||
"name": "Laba Sarea"
|
|
||||||
},
|
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "strapi build",
|
"build": "strapi build",
|
||||||
|
"console": "strapi console",
|
||||||
|
"deploy": "strapi deploy",
|
||||||
|
"dev": "strapi develop",
|
||||||
"develop": "strapi develop",
|
"develop": "strapi develop",
|
||||||
"public-proxy": "ngrok http --domain=vervet-big-dassie.ngrok-free.app 1337",
|
|
||||||
"start": "strapi start",
|
"start": "strapi start",
|
||||||
"strapi": "strapi"
|
"strapi": "strapi",
|
||||||
|
"upgrade": "pnpm dlx @strapi/upgrade latest",
|
||||||
|
"upgrade:dry": "pnpm dlx @strapi/upgrade latest --dry",
|
||||||
|
"public-proxy": "ngrok http --domain=vervet-big-dassie.ngrok-free.app 1337"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@strapi/plugin-graphql": "^4.25.17",
|
"@strapi/plugin-cloud": "5.23.0",
|
||||||
"@strapi/plugin-i18n": "^4.25.13",
|
"@strapi/plugin-graphql": "^5.18.1",
|
||||||
"@strapi/plugin-users-permissions": "^4.25.17",
|
"@strapi/plugin-users-permissions": "5.23.0",
|
||||||
"@strapi/provider-upload-cloudinary": "^4.25.17",
|
"@strapi/provider-upload-cloudinary": "^5.23.0",
|
||||||
"@strapi/strapi": "^4.25.17",
|
"@strapi/strapi": "5.23.0",
|
||||||
"pg": "^8.13.1",
|
"better-sqlite3": "11.3.0",
|
||||||
"pg-connection-string": "^2.7.0",
|
|
||||||
"react": "^18.3.1",
|
"react": "^18.3.1",
|
||||||
"react-dom": "^18.3.1",
|
"react-dom": "^18.3.1",
|
||||||
"react-router-dom": "^5.3.4",
|
"react-router-dom": "^6.30.1",
|
||||||
"sqlite3": "5.1.7",
|
"strapi-plugin-icons-field": "^0.1.3",
|
||||||
"strapi-plugin-netlify-deployments": "^2.0.2",
|
"strapi-plugin-webp-converter": "^1.0.4",
|
||||||
"styled-components": "^5.3.11"
|
"styled-components": "^6.1.19"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/node": "^20.19.9",
|
||||||
|
"@types/react": "^18.3.23",
|
||||||
|
"@types/react-dom": "^18.3.7",
|
||||||
|
"typescript": "^5.8.3"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18.0.0 <=22.x.x",
|
||||||
|
"npm": ">=6.0.0"
|
||||||
},
|
},
|
||||||
"strapi": {
|
"strapi": {
|
||||||
"uuid": "b0fa2552-2961-4886-8673-c2d7fe07b8a1"
|
"uuid": "80b4f18d-c205-4488-9fc1-abea26dc35dd"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import type { StrapiApp } from '@strapi/strapi/admin';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
config: {
|
config: {
|
||||||
locales: [
|
locales: [
|
||||||
@@ -29,7 +31,7 @@ export default {
|
|||||||
// 'zh',
|
// 'zh',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
bootstrap(app) {
|
bootstrap(app: StrapiApp) {
|
||||||
console.log(app);
|
console.log(app);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
// Custom webpack config
|
|
||||||
webpack: (config, webpack) => {
|
|
||||||
// Note: we provide webpack above so you should not `require` it
|
|
||||||
// Perform customizations to webpack config
|
|
||||||
// Important: return the mutated config
|
|
||||||
return config;
|
|
||||||
},
|
|
||||||
|
|
||||||
// App customizations
|
|
||||||
app: (config) => {
|
|
||||||
config.locales = ["es"];
|
|
||||||
|
|
||||||
return config;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
10
back/src/admin/app.ts
Normal file
10
back/src/admin/app.ts
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
import eu from "./translations/eu.json";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
config: {
|
||||||
|
locales: ["eu", "es"],
|
||||||
|
translations: {
|
||||||
|
eu,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
779
back/src/admin/translations/eu.json
Normal file
779
back/src/admin/translations/eu.json
Normal file
@@ -0,0 +1,779 @@
|
|||||||
|
{
|
||||||
|
"Analytics": "Analytics",
|
||||||
|
"Auth.components.Oops.text": "Your account has been suspended.",
|
||||||
|
"Auth.components.Oops.text.admin": "If this is a mistake, please contact your administrator.",
|
||||||
|
"Auth.components.Oops.title": "Oops...",
|
||||||
|
"Auth.form.active.label": "Active",
|
||||||
|
"Auth.form.button.forgot-password": "Send Email",
|
||||||
|
"Auth.form.button.go-home": "GO BACK HOME",
|
||||||
|
"Auth.form.button.login": "Login",
|
||||||
|
"Auth.form.button.login.providers.error": "We cannot connect you through the selected provider.",
|
||||||
|
"Auth.form.button.login.strapi": "Log in via Strapi",
|
||||||
|
"Auth.form.button.password-recovery": "Pasahitzaren Berreskuratzea",
|
||||||
|
"Auth.form.button.register": "Let's start",
|
||||||
|
"Auth.form.confirmPassword.label": "Confirm Password",
|
||||||
|
"Auth.form.currentPassword.label": "Current Password",
|
||||||
|
"Auth.form.email.label": "Email",
|
||||||
|
"Auth.form.email.placeholder": "e.g. kai@doe.com",
|
||||||
|
"Auth.form.error.blocked": "Your account has been blocked by the administrator.",
|
||||||
|
"Auth.form.error.code.provide": "Incorrect code provided.",
|
||||||
|
"Auth.form.error.confirmed": "Your account email is not confirmed.",
|
||||||
|
"Auth.form.error.email.invalid": "This email is invalid.",
|
||||||
|
"Auth.form.error.email.provide": "Please provide your username or your email.",
|
||||||
|
"Auth.form.error.email.taken": "Email is already taken.",
|
||||||
|
"Auth.form.error.invalid": "Identifier or password invalid.",
|
||||||
|
"Auth.form.error.params.provide": "Incorrect params provided.",
|
||||||
|
"Auth.form.error.password.format": "Your password cannot contain the symbol `$` more than three times.",
|
||||||
|
"Auth.form.error.password.local": "This user never set a local password, please login via the provider used during account creation.",
|
||||||
|
"Auth.form.error.password.matching": "Passwords do not match.",
|
||||||
|
"Auth.form.error.password.provide": "Please provide your password.",
|
||||||
|
"Auth.form.error.ratelimit": "Too many attempts, please try again in a minute.",
|
||||||
|
"Auth.form.error.user.not-exist": "This email does not exist.",
|
||||||
|
"Auth.form.error.username.taken": "Username is already taken.",
|
||||||
|
"Auth.form.firstname.label": "First name",
|
||||||
|
"Auth.form.firstname.placeholder": "e.g. Kai",
|
||||||
|
"Auth.form.forgot-password.email.label": "Enter your email",
|
||||||
|
"Auth.form.forgot-password.email.label.success": "Email successfully sent to",
|
||||||
|
"Auth.form.lastname.label": "Last name",
|
||||||
|
"Auth.form.lastname.placeholder": "e.g. Doe",
|
||||||
|
"Auth.form.password.hide-password": "Hide password",
|
||||||
|
"Auth.form.password.hint": "Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number",
|
||||||
|
"Auth.form.password.show-password": "Show password",
|
||||||
|
"Auth.form.register.news.label": "Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy}).",
|
||||||
|
"Auth.form.register.subtitle": "Credentials are only used to authenticate in Strapi. All saved data will be stored in your database.",
|
||||||
|
"Auth.form.rememberMe.label": "Remember me",
|
||||||
|
"Auth.form.username.label": "Username",
|
||||||
|
"Auth.form.username.placeholder": "e.g. Kai_Doe",
|
||||||
|
"Auth.form.welcome.subtitle": "Log in to your Strapi account",
|
||||||
|
"Auth.form.welcome.title": "Welcome to Strapi!",
|
||||||
|
"Auth.link.forgot-password": "Forgot your password?",
|
||||||
|
"Auth.link.ready": "Ready to sign in?",
|
||||||
|
"Auth.link.signin": "Sign in",
|
||||||
|
"Auth.link.signin.account": "Already have an account?",
|
||||||
|
"Auth.login.sso.divider": "Or login with",
|
||||||
|
"Auth.login.sso.loading": "Loading providers...",
|
||||||
|
"Auth.login.sso.subtitle": "Login to your account via SSO",
|
||||||
|
"Auth.privacy-policy-agreement.policy": "privacy policy",
|
||||||
|
"Auth.privacy-policy-agreement.terms": "terms",
|
||||||
|
"Auth.reset-password.title": "Reset password",
|
||||||
|
"Content Manager": "Content Manager",
|
||||||
|
"Content Type Builder": "Content-Types Builder",
|
||||||
|
"Documentation": "Documentation",
|
||||||
|
"Email": "Email",
|
||||||
|
"Files Upload": "Files Upload",
|
||||||
|
"HomePage.head.title": "Homepage",
|
||||||
|
"HomePage.header.title": "Kaixo, {name}",
|
||||||
|
"HomePage.header.subtitle": "Ongi etorri zure kudeaketa panelera",
|
||||||
|
"HomePage.widget.loading": "Loading widget content",
|
||||||
|
"HomePage.widget.error": "Couldn't load widget content.",
|
||||||
|
"HomePage.widget.no-data": "No content found.",
|
||||||
|
"Media Library": "Media Library",
|
||||||
|
"New entry": "New entry",
|
||||||
|
"Password": "Password",
|
||||||
|
"Provider": "Provider",
|
||||||
|
"ResetPasswordToken": "Reset Password Token",
|
||||||
|
"Role": "Role",
|
||||||
|
"Roles & Permissions": "Roles & Permissions",
|
||||||
|
"Roles.ListPage.notification.delete-all-not-allowed": "Some roles could not be deleted since they are associated with users",
|
||||||
|
"Roles.ListPage.notification.delete-not-allowed": "A role cannot be deleted if associated with users",
|
||||||
|
"Roles.RoleRow.select-all": "Select {name} for bulk actions",
|
||||||
|
"Roles.RoleRow.user-count": "{number, plural, =0 {# user} one {# user} other {# users}}",
|
||||||
|
"Roles.components.List.empty.withSearch": "There is no role corresponding to the search ({search})...",
|
||||||
|
"Settings.PageTitle": "Settings — {name}",
|
||||||
|
"Settings.apiTokens.ListView.headers.createdAt": "Created at",
|
||||||
|
"Settings.apiTokens.ListView.headers.description": "Description",
|
||||||
|
"Settings.apiTokens.ListView.headers.lastUsedAt": "Last used",
|
||||||
|
"Settings.apiTokens.ListView.headers.name": "Name",
|
||||||
|
"Settings.apiTokens.ListView.headers.type": "Token type",
|
||||||
|
"Settings.apiTokens.addFirstToken": "Add your first API Token",
|
||||||
|
"Settings.apiTokens.addNewToken": "Add new API Token",
|
||||||
|
"Settings.apiTokens.create": "Create new API Token",
|
||||||
|
"Settings.apiTokens.createPage.BoundRoute.title": "Bound route to",
|
||||||
|
"Settings.apiTokens.createPage.permissions.description": "Only actions bound by a route are listed below.",
|
||||||
|
"Settings.apiTokens.createPage.permissions.header.hint": "Select the application's actions or the plugin's actions and click on the cog icon to display the bound route",
|
||||||
|
"Settings.apiTokens.createPage.permissions.header.title": "Advanced settings",
|
||||||
|
"Settings.apiTokens.createPage.permissions.title": "Permissions",
|
||||||
|
"Settings.apiTokens.createPage.title": "Create API Token",
|
||||||
|
"Settings.apiTokens.description": "List of generated tokens to consume the API",
|
||||||
|
"Settings.apiTokens.emptyStateLayout": "You don’t have any content yet...",
|
||||||
|
"Settings.apiTokens.regenerate": "Regenerate",
|
||||||
|
"Settings.apiTokens.title": "API Tokens",
|
||||||
|
"Settings.apiTokens.lastHour": "last hour",
|
||||||
|
"Settings.application.customization": "Customization",
|
||||||
|
"Settings.application.customization.auth-logo.carousel-hint": "Replace the logo in the authentication pages",
|
||||||
|
"Settings.application.customization.carousel-hint": "Change the admin panel logo (Max dimension: {dimension}x{dimension}, Max file size: {size}KB)",
|
||||||
|
"Settings.application.customization.carousel-slide.label": "Logo slide",
|
||||||
|
"Settings.application.customization.carousel.auth-logo.title": "Auth logo",
|
||||||
|
"Settings.application.customization.carousel.change-action": "Change logo",
|
||||||
|
"Settings.application.customization.carousel.menu-logo.title": "Menu logo",
|
||||||
|
"Settings.application.customization.carousel.reset-action": "Reset logo",
|
||||||
|
"Settings.application.customization.carousel.title": "Logo",
|
||||||
|
"Settings.application.customization.menu-logo.carousel-hint": "Replace the logo in the main navigation",
|
||||||
|
"Settings.application.customization.modal.cancel": "Cancel",
|
||||||
|
"Settings.application.customization.modal.pending": "Pending logo",
|
||||||
|
"Settings.application.customization.modal.pending.card-badge": "image",
|
||||||
|
"Settings.application.customization.modal.pending.choose-another": "Choose another logo",
|
||||||
|
"Settings.application.customization.modal.pending.subtitle": "Manage the chosen logo before uploading it",
|
||||||
|
"Settings.application.customization.modal.pending.title": "Logo ready to upload",
|
||||||
|
"Settings.application.customization.modal.pending.upload": "Upload logo",
|
||||||
|
"Settings.application.customization.modal.tab.label": "How do you want to upload your assets?",
|
||||||
|
"Settings.application.customization.modal.upload": "Upload logo",
|
||||||
|
"Settings.application.customization.modal.upload.cta.browse": "Browse files",
|
||||||
|
"Settings.application.customization.modal.upload.drag-drop": "Drag and Drop here or",
|
||||||
|
"Settings.application.customization.modal.upload.error-format": "Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg).",
|
||||||
|
"Settings.application.customization.modal.upload.error-network": "Network error",
|
||||||
|
"Settings.application.customization.modal.upload.error-size": "The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)",
|
||||||
|
"Settings.application.customization.modal.upload.file-validation": "Max dimension: {dimension}x{dimension}, Max size: {size}KB",
|
||||||
|
"Settings.application.customization.modal.upload.from-computer": "From computer",
|
||||||
|
"Settings.application.customization.modal.upload.from-url": "From URL",
|
||||||
|
"Settings.application.customization.modal.upload.from-url.input-label": "URL",
|
||||||
|
"Settings.application.customization.modal.upload.next": "Next",
|
||||||
|
"Settings.application.customization.size-details": "Max dimension: {dimension}×{dimension}, Max file size: {size}KB",
|
||||||
|
"Settings.application.description": "Administration panel’s global information",
|
||||||
|
"Settings.application.edition-title": "current edition",
|
||||||
|
"Settings.application.ee-or-ce": "{communityEdition, select, true {Community Edition} other {Enterprise Edition}}",
|
||||||
|
"Settings.application.ee.admin-seats.add-seats": "Manage seats",
|
||||||
|
"Settings.application.ee.admin-seats.support": "Contact sales",
|
||||||
|
"Settings.application.ee.admin-seats.at-limit-tooltip": "At limit: add seats to invite more users",
|
||||||
|
"Settings.application.ee.admin-seats.count": "<text>{enforcementUserCount}</text>/{permittedSeats}",
|
||||||
|
"Settings.application.get-help": "Get help",
|
||||||
|
"Settings.application.link-pricing": "See all pricing plans",
|
||||||
|
"Settings.application.link-upgrade": "Upgrade your admin panel",
|
||||||
|
"Settings.application.node-version": "node version",
|
||||||
|
"Settings.application.strapi-version": "Strapi version",
|
||||||
|
"Settings.application.strapiVersion": "Strapi version",
|
||||||
|
"Settings.application.title": "Overview",
|
||||||
|
"Settings.error": "Error",
|
||||||
|
"Settings.global": "Doikuntza orokorrak",
|
||||||
|
"Settings.permissions": "Kudeaketa panela",
|
||||||
|
"Settings.permissions.auditLogs.action": "Action",
|
||||||
|
"Settings.permissions.auditLogs.admin.auth.success": "Admin login",
|
||||||
|
"Settings.permissions.auditLogs.admin.logout": "Admin logout",
|
||||||
|
"Settings.permissions.auditLogs.component.create": "Konponentea sortu",
|
||||||
|
"Settings.permissions.auditLogs.component.delete": "Konponentea ezabatu",
|
||||||
|
"Settings.permissions.auditLogs.component.update": "Konponentea eguneratu",
|
||||||
|
"Settings.permissions.auditLogs.content-type.create": "Create content type",
|
||||||
|
"Settings.permissions.auditLogs.content-type.delete": "Delete content type",
|
||||||
|
"Settings.permissions.auditLogs.content-type.update": "Update content type",
|
||||||
|
"Settings.permissions.auditLogs.date": "Data",
|
||||||
|
"Settings.permissions.auditLogs.details": "Log Details",
|
||||||
|
"Settings.permissions.auditLogs.entry.create": "Create entry{model, select, undefined {} other { ({model})}}",
|
||||||
|
"Settings.permissions.auditLogs.entry.delete": "Delete entry{model, select, undefined {} other { ({model})}}",
|
||||||
|
"Settings.permissions.auditLogs.entry.publish": "Publish entry {model, select, undefined {} other {({model})}}",
|
||||||
|
"Settings.permissions.auditLogs.entry.unpublish": "Unpublish entry{model, select, undefined {} other { ({model})}}",
|
||||||
|
"Settings.permissions.auditLogs.entry.update": "Update entry{model, select, undefined {} other { ({model})}}",
|
||||||
|
"Settings.permissions.auditLogs.filters.combobox.aria-label": "Search and select an option to filter",
|
||||||
|
"Settings.permissions.auditLogs.listview.header.subtitle": "Logs of all the activities that happened in your environment",
|
||||||
|
"Settings.permissions.auditLogs.not-available": "Audit Logs is only available as part of a paid plan. Upgrade to get a searchable and filterable display of all activities.",
|
||||||
|
"Settings.permissions.auditLogs.media.create": "Create media",
|
||||||
|
"Settings.permissions.auditLogs.media.delete": "Delete media",
|
||||||
|
"Settings.permissions.auditLogs.media.update": "Update media",
|
||||||
|
"Settings.permissions.auditLogs.payload": "Payload",
|
||||||
|
"Settings.permissions.auditLogs.permission.create": "Create permission",
|
||||||
|
"Settings.permissions.auditLogs.permission.delete": "Delete permission",
|
||||||
|
"Settings.permissions.auditLogs.permission.update": "Update permission",
|
||||||
|
"Settings.permissions.auditLogs.role.create": "Create role",
|
||||||
|
"Settings.permissions.auditLogs.role.delete": "Delete role",
|
||||||
|
"Settings.permissions.auditLogs.role.update": "Update role",
|
||||||
|
"Settings.permissions.auditLogs.user": "User",
|
||||||
|
"Settings.permissions.auditLogs.user.create": "Create user",
|
||||||
|
"Settings.permissions.auditLogs.user.delete": "Delete user",
|
||||||
|
"Settings.permissions.auditLogs.user.fullname": "{firstname} {lastname}",
|
||||||
|
"Settings.permissions.auditLogs.user.update": "Update user",
|
||||||
|
"Settings.permissions.auditLogs.userId": "User ID",
|
||||||
|
"Settings.permissions.category": "Permissions settings for the {category}",
|
||||||
|
"Settings.permissions.category.plugins": "Permissions settings for the {category} plugin",
|
||||||
|
"Settings.permissions.conditions.anytime": "Anytime",
|
||||||
|
"Settings.permissions.conditions.apply": "Apply",
|
||||||
|
"Settings.permissions.conditions.can": "Can",
|
||||||
|
"Settings.permissions.conditions.conditions": "Conditions",
|
||||||
|
"Settings.permissions.conditions.define-conditions": "Define conditions",
|
||||||
|
"Settings.permissions.conditions.links": "Links",
|
||||||
|
"Settings.permissions.conditions.no-actions": "You first need to select actions (create, read, update, ...) before defining conditions on them.",
|
||||||
|
"Settings.permissions.conditions.none-selected": "Anytime",
|
||||||
|
"Settings.permissions.conditions.or": "OR",
|
||||||
|
"Settings.permissions.conditions.when": "When",
|
||||||
|
"Settings.permissions.select-all-by-permission": "Select all {label} permissions",
|
||||||
|
"Settings.permissions.select-by-permission": "Select {label} permission",
|
||||||
|
"Settings.permissions.users.active": "Active",
|
||||||
|
"Settings.permissions.users.create": "Invite new user",
|
||||||
|
"Settings.permissions.users.email": "Email",
|
||||||
|
"Settings.permissions.users.firstname": "Firstname",
|
||||||
|
"Settings.permissions.users.form.sso": "Connect with SSO",
|
||||||
|
"Settings.permissions.users.sso.provider.error": "An error occurred while requesting the SSO settings",
|
||||||
|
"Settings.permissions.users.form.sso.description": "When enabled (ON), users can login via SSO",
|
||||||
|
"Settings.permissions.users.inactive": "Inactive",
|
||||||
|
"Settings.permissions.users.lastname": "Lastname",
|
||||||
|
"Settings.permissions.users.listview.header.subtitle": "All the users who have access to the Strapi admin panel",
|
||||||
|
"Settings.permissions.users.roles": "Roles",
|
||||||
|
"Settings.permissions.users.strapi-author": "Author",
|
||||||
|
"Settings.permissions.users.strapi-editor": "Editor",
|
||||||
|
"Settings.permissions.users.strapi-super-admin": "Super Admin",
|
||||||
|
"Settings.permissions.users.tabs.label": "Tabs Permissions",
|
||||||
|
"Settings.permissions.users.user-status": "User status",
|
||||||
|
"Settings.permissions.users.username": "Username",
|
||||||
|
"Settings.profile.form.notify.data.loaded": "Your profile data has been loaded",
|
||||||
|
"Settings.profile.form.section.experience.clear.select": "Clear the interface language selected",
|
||||||
|
"Settings.profile.form.section.experience.here": "here",
|
||||||
|
"Settings.profile.form.section.experience.interfaceLanguage": "Interface language",
|
||||||
|
"Settings.profile.form.section.experience.interfaceLanguage.hint": "This will only display your own interface in the chosen language.",
|
||||||
|
"Settings.profile.form.section.experience.interfaceLanguageHelp": "Preference changes will apply only to you. More information is available {here}.",
|
||||||
|
"Settings.profile.form.section.experience.mode.hint": "Displays your interface in the chosen mode.",
|
||||||
|
"Settings.profile.form.section.experience.mode.label": "Interface mode",
|
||||||
|
"Settings.profile.form.section.experience.mode.option-label": "{name} mode",
|
||||||
|
"Settings.profile.form.section.experience.mode.option-system-label": "Use system settings",
|
||||||
|
"Settings.profile.form.section.experience.title": "Experience",
|
||||||
|
"Settings.profile.form.section.head.title": "User profile",
|
||||||
|
"Settings.profile.form.section.profile.page.title": "Profile page",
|
||||||
|
"Settings.roles.create.description": "Define the rights given to the role",
|
||||||
|
"Settings.roles.create.title": "Create a role",
|
||||||
|
"Settings.roles.created": "Role created",
|
||||||
|
"Settings.roles.edit.title": "Edit a role",
|
||||||
|
"Settings.roles.form.button.users-with-role": "{number, plural, =0 {# users} one {# user} other {# users}} with this role",
|
||||||
|
"Settings.roles.form.created": "Created",
|
||||||
|
"Settings.roles.form.description": "Name and description of the role",
|
||||||
|
"Settings.roles.form.permission.property-label": "{label} permissions",
|
||||||
|
"Settings.roles.form.permissions.attributesPermissions": "Fields permissions",
|
||||||
|
"Settings.roles.form.permissions.create": "Create",
|
||||||
|
"Settings.roles.form.permissions.delete": "Delete",
|
||||||
|
"Settings.roles.form.permissions.publish": "Publish",
|
||||||
|
"Settings.roles.form.permissions.read": "Read",
|
||||||
|
"Settings.roles.form.permissions.update": "Update",
|
||||||
|
"Settings.roles.list.button.add": "Add new role",
|
||||||
|
"Settings.roles.list.description": "List of roles",
|
||||||
|
"Settings.roles.title.singular": "role",
|
||||||
|
"Settings.sso.description": "Ezarri zure SSO ezarpenak.",
|
||||||
|
"Settings.sso.form.defaultRole.description": "It will attach the new authenticated user to the selected role",
|
||||||
|
"Settings.sso.form.defaultRole.description-not-allowed": "You need to have the permission to read the admin roles",
|
||||||
|
"Settings.sso.form.defaultRole.label": "Default role",
|
||||||
|
"Settings.sso.form.localAuthenticationLock.label": "Local authentication lock-out",
|
||||||
|
"Settings.sso.form.localAuthenticationLock.description": "Select the roles for which you want to disable the local authentication",
|
||||||
|
"Settings.sso.form.registration.description": "Create new user on SSO login if no account exists",
|
||||||
|
"Settings.sso.form.registration.label": "Auto-registration",
|
||||||
|
"Settings.sso.title": "Single Sign-On",
|
||||||
|
"Settings.sso.not-available": "SSO is only available as part of a paid plan. Upgrade to configure additional sign-in & sign-up methods for your administration panel.",
|
||||||
|
"Settings.content-history.title": "Content History",
|
||||||
|
"Settings.content-history.description": "Get more control over every step of your content’s lifecycle.",
|
||||||
|
"Settings.content-history.not-available": "Content History is only available as part of a paid plan. Upgrade to get full control over your content's lifecycle.",
|
||||||
|
"Settings.tokens.Button.cancel": "Cancel",
|
||||||
|
"Settings.tokens.Button.regenerate": "Regenerate",
|
||||||
|
"Settings.tokens.ListView.headers.createdAt": "Created at",
|
||||||
|
"Settings.tokens.ListView.headers.description": "Description",
|
||||||
|
"Settings.tokens.ListView.headers.lastUsedAt": "Last used",
|
||||||
|
"Settings.tokens.ListView.headers.name": "Name",
|
||||||
|
"Settings.tokens.RegenerateDialog.title": "Regenerate token",
|
||||||
|
"Settings.tokens.copy.editMessage": "For security reasons, you can only see your token once.",
|
||||||
|
"Settings.tokens.copy.editTitle": "This token isn’t accessible anymore.",
|
||||||
|
"Settings.tokens.copy.lastWarning": "Make sure to copy this token, you won’t be able to see it again!",
|
||||||
|
"Settings.tokens.duration.30-days": "30 days",
|
||||||
|
"Settings.tokens.duration.7-days": "7 days",
|
||||||
|
"Settings.tokens.duration.90-days": "90 days",
|
||||||
|
"Settings.tokens.duration.expiration-date": "Expiration date",
|
||||||
|
"Settings.tokens.duration.unlimited": "Unlimited",
|
||||||
|
"Settings.tokens.form.description": "Description",
|
||||||
|
"Settings.tokens.form.duration": "Token duration",
|
||||||
|
"Settings.tokens.form.name": "Name",
|
||||||
|
"Settings.tokens.form.type": "Token type",
|
||||||
|
"Settings.tokens.notification.copied": "Token copied to clipboard.",
|
||||||
|
"Settings.tokens.popUpWarning.message": "Are you sure you want to regenerate this token?",
|
||||||
|
"Settings.tokens.regenerate": "Regenerate",
|
||||||
|
"Settings.tokens.types.custom": "Custom",
|
||||||
|
"Settings.tokens.types.full-access": "Full access",
|
||||||
|
"Settings.tokens.types.read-only": "Read-only",
|
||||||
|
"Settings.transferTokens.ListView.headers.type": "Token type",
|
||||||
|
"Settings.transferTokens.addFirstToken": "Add your first Transfer Token",
|
||||||
|
"Settings.transferTokens.addNewToken": "Add new Transfer Token",
|
||||||
|
"Settings.transferTokens.create": "Create new Transfer Token",
|
||||||
|
"Settings.transferTokens.createPage.title": "Create Transfer Token",
|
||||||
|
"Settings.transferTokens.description": "List of generated transfer tokens",
|
||||||
|
"Settings.transferTokens.emptyStateLayout": "You don’t have any content yet...",
|
||||||
|
"Settings.transferTokens.title": "Transfer Tokens",
|
||||||
|
"Settings.webhooks.create": "Create a webhook",
|
||||||
|
"Settings.webhooks.create.header": "Create new header",
|
||||||
|
"Settings.webhooks.created": "Webhook created",
|
||||||
|
"Settings.webhooks.event.publish-tooltip": "This event only exists for contents with Draft/Publish system enabled",
|
||||||
|
"Settings.webhooks.event.select": "Select event",
|
||||||
|
"Settings.webhooks.events.isLoading": "Events loading",
|
||||||
|
"Settings.webhooks.events.create": "Create",
|
||||||
|
"Settings.webhooks.events.update": "Update",
|
||||||
|
"Settings.webhooks.events.delete": "Delete webhook",
|
||||||
|
"Settings.webhooks.form.events": "Events",
|
||||||
|
"Settings.webhooks.form.headers": "Headers",
|
||||||
|
"Settings.webhooks.form.url": "URL",
|
||||||
|
"Settings.webhooks.headers.remove": "Remove header row {number}",
|
||||||
|
"Settings.webhooks.key": "Key",
|
||||||
|
"Settings.webhooks.list.button.add": "Create new webhook",
|
||||||
|
"Settings.webhooks.list.description": "Get POST changes notifications",
|
||||||
|
"Settings.webhooks.list.empty.description": "No webhooks found",
|
||||||
|
"Settings.webhooks.list.empty.link": "See our documentation",
|
||||||
|
"Settings.webhooks.list.empty.title": "There are no webhooks yet",
|
||||||
|
"Settings.webhooks.list.th.actions": "actions",
|
||||||
|
"Settings.webhooks.list.th.status": "status",
|
||||||
|
"Settings.webhooks.list.loading.success": "Webhooks have been loaded",
|
||||||
|
"Settings.webhooks.singular": "webhook",
|
||||||
|
"Settings.webhooks.title": "Webhooks",
|
||||||
|
"Settings.webhooks.to.delete": "{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected",
|
||||||
|
"Settings.webhooks.trigger": "Trigger",
|
||||||
|
"Settings.webhooks.trigger.cancel": "Cancel trigger",
|
||||||
|
"Settings.webhooks.trigger.pending": "Pending…",
|
||||||
|
"Settings.webhooks.trigger.save": "Please save to trigger",
|
||||||
|
"Settings.webhooks.trigger.success": "Success!",
|
||||||
|
"Settings.webhooks.trigger.success.label": "Trigger succeeded",
|
||||||
|
"Settings.webhooks.trigger.test": "Test-trigger",
|
||||||
|
"Settings.webhooks.trigger.title": "Save before Trigger",
|
||||||
|
"Settings.webhooks.value": "Value",
|
||||||
|
"Settings.webhooks.validation.name.required": "Name is required",
|
||||||
|
"Settings.webhooks.validation.name.regex": "The name must start with a letter and only contain letters, numbers, spaces and underscores",
|
||||||
|
"Settings.webhooks.validation.url.required": "Url is required",
|
||||||
|
"Settings.webhooks.validation.url.regex": "The value must be a valid Url",
|
||||||
|
"Settings.webhooks.validation.key": "Key is required",
|
||||||
|
"Settings.webhooks.validation.value": "Value is required",
|
||||||
|
"Settings.page.PurchaseAudit-logs.description": "Track and review changes with your team",
|
||||||
|
"Settings.page.PurchaseAudit-logs.perks1": "Easily track changes",
|
||||||
|
"Settings.page.PurchaseAudit-logs.perks2": "Review changes with ease",
|
||||||
|
"Settings.page.PurchaseAudit-logs.perks3": "Maintain security and compliance",
|
||||||
|
"Settings.page.PurchaseContent-history.description": "Instantly revert content changes",
|
||||||
|
"Settings.page.PurchaseContent-history.perks1": "Browse your content history",
|
||||||
|
"Settings.page.PurchaseContent-history.perks2": "Revert changes in one click",
|
||||||
|
"Settings.page.PurchaseContent-history.perks3": "Track changes across locales",
|
||||||
|
"Settings.page.PurchaseSSO.description": "Simplify authentication for your team",
|
||||||
|
"Settings.page.PurchaseSSO.perks1": "Unified authentication",
|
||||||
|
"Settings.page.PurchaseSSO.perks2": "Enhanced security",
|
||||||
|
"Settings.page.PurchaseSSO.perks3": "Support for webhooks",
|
||||||
|
"Settings.page.purchase.upgrade.cta": "Upgrade",
|
||||||
|
"Settings.page.purchase.learn-more.cta": "Learn more",
|
||||||
|
"Usecase.back-end": "Back-end developer",
|
||||||
|
"Usecase.button.skip": "Skip this question",
|
||||||
|
"Usecase.content-creator": "Content Creator",
|
||||||
|
"Usecase.front-end": "Front-end developer",
|
||||||
|
"Usecase.full-stack": "Full-stack developer",
|
||||||
|
"Usecase.input.work-type": "What type of work do you do?",
|
||||||
|
"Usecase.notification.success.project-created": "Project has been successfully created",
|
||||||
|
"Usecase.other": "Other",
|
||||||
|
"Usecase.title": "Tell us a bit more about yourself",
|
||||||
|
"Username": "Username",
|
||||||
|
"Users & Permissions": "Users & Permissions",
|
||||||
|
"Users": "Users",
|
||||||
|
"Users.components.List.empty": "There is no users...",
|
||||||
|
"Users.components.List.empty.withFilters": "There is no users with the applied filters...",
|
||||||
|
"Users.components.List.empty.withSearch": "There is no users corresponding to the search ({search})...",
|
||||||
|
"admin.pages.MarketPlacePage.sort.label": "Sort by",
|
||||||
|
"admin.pages.MarketPlacePage.filters.categories": "Categories",
|
||||||
|
"admin.pages.MarketPlacePage.filters.categoriesSelected": "{count, plural, =0 {No categories} one {# category} other {# categories}} selected",
|
||||||
|
"admin.pages.MarketPlacePage.filters.collections": "Collections",
|
||||||
|
"admin.pages.MarketPlacePage.filters.collectionsSelected": "{count, plural, =0 {No Collections} one {# Collection} other {# Collections}} selected",
|
||||||
|
"admin.pages.MarketPlacePage.head": "Marketplace — Plugins",
|
||||||
|
"admin.pages.MarketPlacePage.missingPlugin.description": "Tell us what plugin you are looking for and we'll let our community plugin developers know in case they are in search for inspiration!",
|
||||||
|
"admin.pages.MarketPlacePage.missingPlugin.title": "Missing a plugin?",
|
||||||
|
"admin.pages.MarketPlacePage.offline.subtitle": "You need to be connected to the Internet to access Strapi Market.",
|
||||||
|
"admin.pages.MarketPlacePage.offline.title": "You are offline",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.copy": "Copy install command",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.copy.success": "Install command ready to be pasted in your terminal",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.downloads": "This plugin has {downloadsCount} weekly downloads",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.githubStars": "This plugin was starred {starsCount} on GitHub",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.info": "Learn more",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.info.label": "Learn more about {pluginName}",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.info.text": "More",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.installed": "Installed",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.tooltip.madeByStrapi": "Made by Strapi",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.tooltip.verified": "Plugin verified by Strapi",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.version": "Update your Strapi version: \"{strapiAppVersion}\" to: \"{versionRange}\"",
|
||||||
|
"admin.pages.MarketPlacePage.plugin.version.null": "Unable to verify compatibility with your Strapi version: \"{strapiAppVersion}\"",
|
||||||
|
"admin.pages.MarketPlacePage.plugins": "Plugins",
|
||||||
|
"admin.pages.MarketPlacePage.provider.downloads": "This provider has {downloadsCount} weekly downloads",
|
||||||
|
"admin.pages.MarketPlacePage.provider.githubStars": "This provider was starred {starsCount} on GitHub",
|
||||||
|
"admin.pages.MarketPlacePage.providers": "Providers",
|
||||||
|
"admin.pages.MarketPlacePage.search.clear": "Clear the search",
|
||||||
|
"admin.pages.MarketPlacePage.search.empty": "No result for \"{target}\"",
|
||||||
|
"admin.pages.MarketPlacePage.search.placeholder": "Search",
|
||||||
|
"admin.pages.MarketPlacePage.sort.alphabetical": "Alphabetical order",
|
||||||
|
"admin.pages.MarketPlacePage.sort.alphabetical.selected": "Sort by alphabetical order",
|
||||||
|
"admin.pages.MarketPlacePage.sort.githubStars": "Number of GitHub stars",
|
||||||
|
"admin.pages.MarketPlacePage.sort.githubStars.selected": "Sort by GitHub stars",
|
||||||
|
"admin.pages.MarketPlacePage.sort.newest": "Newest",
|
||||||
|
"admin.pages.MarketPlacePage.sort.newest.selected": "Sort by newest",
|
||||||
|
"admin.pages.MarketPlacePage.sort.npmDownloads": "Number of downloads",
|
||||||
|
"admin.pages.MarketPlacePage.sort.npmDownloads.selected": "Sort by npm downloads",
|
||||||
|
"admin.pages.MarketPlacePage.submit.plugin.link": "Submit plugin",
|
||||||
|
"admin.pages.MarketPlacePage.submit.provider.link": "Submit provider",
|
||||||
|
"admin.pages.MarketPlacePage.subtitle": "Get more out of Strapi",
|
||||||
|
"admin.pages.MarketPlacePage.tab-group.label": "Plugins and Providers for Strapi",
|
||||||
|
"anErrorOccurred": "Whoops! Something went wrong. Please, try again.",
|
||||||
|
"noPreview": "No preview available",
|
||||||
|
"app.component.CopyToClipboard.label": "Copy to clipboard",
|
||||||
|
"app.component.search.label": "Search for {target}",
|
||||||
|
"app.component.table.duplicate": "Duplicate {target}",
|
||||||
|
"app.component.table.edit": "Edit {target}",
|
||||||
|
"app.component.table.read": "Read {target}",
|
||||||
|
"app.component.table.select.one-entry": "Select {target}",
|
||||||
|
"app.component.table.view": "{target} details",
|
||||||
|
"app.components.BlockLink.blog": "Blog",
|
||||||
|
"app.components.BlockLink.blog.content": "Read the latest news about Strapi and the ecosystem.",
|
||||||
|
"app.components.BlockLink.cloud": "Strapi Cloud",
|
||||||
|
"app.components.BlockLink.cloud.content": "Fully-managed cloud hosting for your Strapi project.",
|
||||||
|
"app.components.BlockLink.code": "Code examples",
|
||||||
|
"app.components.BlockLink.code.content": "Learn by testing real projects developed the community.",
|
||||||
|
"app.components.BlockLink.documentation.content": "Discover the essential concepts, guides and instructions.",
|
||||||
|
"app.components.BlockLink.tutorial": "Tutorials",
|
||||||
|
"app.components.BlockLink.tutorial.content": "Follow step-by-step instructions to use and customize Strapi.",
|
||||||
|
"app.components.Button.cancel": "Cancel",
|
||||||
|
"app.components.Button.confirm": "Confirm",
|
||||||
|
"app.components.Button.reset": "Reset",
|
||||||
|
"app.components.ComingSoonPage.comingSoon": "Coming soon",
|
||||||
|
"app.components.ConfirmDialog.title": "Confirmation",
|
||||||
|
"app.components.DownloadInfo.download": "Download in progress...",
|
||||||
|
"app.components.DownloadInfo.text": "This could take a minute. Thanks for your patience.",
|
||||||
|
"app.components.EmptyAttributes.title": "There are no fields yet",
|
||||||
|
"app.components.EmptyStateLayout.content-document": "No content found",
|
||||||
|
"app.components.EmptyStateLayout.content-permissions": "You don't have the permissions to access that content",
|
||||||
|
"app.components.GuidedTour.CM.create.content": "<p>Create and manage all the content here in the Content Manager.</p><p>Ex: Taking the Blog website example further, one can write an Article, save and publish it as they like.</p><p>💡 Quick tip — Don't forget to hit publish on the content you create.</p>",
|
||||||
|
"app.components.GuidedTour.CM.create.title": "⚡️ Create content",
|
||||||
|
"app.components.GuidedTour.CM.success.content": "<p>Awesome, one last step to go!</p><b>🚀 See content in action</b>",
|
||||||
|
"app.components.GuidedTour.CM.success.cta.title": "Test the API",
|
||||||
|
"app.components.GuidedTour.CM.success.title": "Step 2: Completed ✅",
|
||||||
|
"app.components.GuidedTour.CTB.create.content": "<p>Collection Types help you manage several entries, Single Types are suitable to manage only one entry.</p> <p>Ex: For a Blog website, Articles would be a Collection Type whereas a Homepage would be a Single Type.</p>",
|
||||||
|
"app.components.GuidedTour.CTB.create.cta.title": "Build a Collection Type",
|
||||||
|
"app.components.GuidedTour.CTB.create.title": "🧠 Create a first Collection Type",
|
||||||
|
"app.components.GuidedTour.CTB.success.content": "<p>Good going!</p><b>⚡️ What would you like to share with the world?</b>",
|
||||||
|
"app.components.GuidedTour.CTB.success.title": "Step 1: Completed ✅",
|
||||||
|
"app.components.GuidedTour.apiTokens.create.content": "<p>Generate an authentication token here and retrieve the content you just created.</p>",
|
||||||
|
"app.components.GuidedTour.apiTokens.create.cta.title": "Generate an API Token",
|
||||||
|
"app.components.GuidedTour.apiTokens.create.title": "🚀 See content in action",
|
||||||
|
"app.components.GuidedTour.apiTokens.success.content": "<p>See content in action by making an HTTP request:</p><ul><li><p>To this URL: <light>https://'<'YOUR_DOMAIN'>'/api/'<'YOUR_CT'>'</light></p></li><li><p>With the header: <light>Authorization: bearer '<'YOUR_API_TOKEN'>'</light></p></li></ul><p>For more ways to interact with content, see the <documentationLink>documentation</documentationLink>.</p>",
|
||||||
|
"app.components.GuidedTour.apiTokens.success.cta.title": "Go back to homepage",
|
||||||
|
"app.components.GuidedTour.apiTokens.success.title": "Step 3: Completed ✅",
|
||||||
|
"app.components.GuidedTour.create-content": "Create content",
|
||||||
|
"app.components.GuidedTour.home.CM.title": "⚡️ What would you like to share with the world?",
|
||||||
|
"app.components.GuidedTour.home.CTB.cta.title": "Go to the Content type Builder",
|
||||||
|
"app.components.GuidedTour.home.CTB.title": "🧠 Build the content structure",
|
||||||
|
"app.components.GuidedTour.home.apiTokens.cta.title": "Test the API",
|
||||||
|
"app.components.GuidedTour.skip": "Skip the tour",
|
||||||
|
"app.components.GuidedTour.title": "3 steps to get started",
|
||||||
|
"app.components.ImgPreview.hint": "Drag & drop your file into this area or {browse} for a file to upload",
|
||||||
|
"app.components.ImgPreview.hint.browse": "browse",
|
||||||
|
"app.components.InputFile.newFile": "Add new file",
|
||||||
|
"app.components.InputFileDetails.open": "Open in a new tab",
|
||||||
|
"app.components.InputFileDetails.originalName": "Original name:",
|
||||||
|
"app.components.InputFileDetails.remove": "Remove this file",
|
||||||
|
"app.components.InputFileDetails.size": "Size:",
|
||||||
|
"app.components.InstallPluginPage.Download.description": "It might take a few seconds to download and install the plugin.",
|
||||||
|
"app.components.InstallPluginPage.Download.title": "Downloading...",
|
||||||
|
"app.components.InstallPluginPage.description": "Extend your app effortlessly.",
|
||||||
|
"app.components.LeftMenu.collapse": "Collapse the navbar",
|
||||||
|
"app.components.LeftMenu.expand": "Expand the navbar",
|
||||||
|
"app.components.LeftMenu.general": "General",
|
||||||
|
"app.components.LeftMenu.logo.alt": "Application logo",
|
||||||
|
"app.components.LeftMenu.logout": "Log out",
|
||||||
|
"app.components.LeftMenu.navbrand.title": "Strapi Dashboard",
|
||||||
|
"app.components.LeftMenu.navbrand.workplace": "Workplace",
|
||||||
|
"app.components.LeftMenu.plugins": "Plugins",
|
||||||
|
"app.components.LeftMenuFooter.help": "Help",
|
||||||
|
"app.components.LeftMenuFooter.poweredBy": "Powered by ",
|
||||||
|
"app.components.LeftMenuLinkContainer.collectionTypes": "Collection Types",
|
||||||
|
"app.components.LeftMenuLinkContainer.configuration": "Configurations",
|
||||||
|
"app.components.LeftMenuLinkContainer.general": "General",
|
||||||
|
"app.components.LeftMenuLinkContainer.noPluginsInstalled": "No plugins installed yet",
|
||||||
|
"app.components.LeftMenuLinkContainer.plugins": "Plugins",
|
||||||
|
"app.components.LeftMenuLinkContainer.singleTypes": "Single Types",
|
||||||
|
"app.components.ListPluginsPage.deletePlugin.description": "It might take a few seconds to uninstall the plugin.",
|
||||||
|
"app.components.ListPluginsPage.deletePlugin.title": "Uninstalling",
|
||||||
|
"app.components.ListPluginsPage.description": "List of the installed plugins in the project.",
|
||||||
|
"app.components.ListPluginsPage.head.title": "List plugins",
|
||||||
|
"app.components.Logout.logout": "Logout",
|
||||||
|
"app.components.Logout.profile": "Profile",
|
||||||
|
"app.components.MarketplaceBanner": "Discover plugins built by the community, and many more awesome things to kickstart your project, on Strapi Marketplace.",
|
||||||
|
"app.components.MarketplaceBanner.image.alt": "A Strapi rocket logo",
|
||||||
|
"app.components.MarketplaceBanner.link": "Check it out now",
|
||||||
|
"app.components.NotFoundPage.back": "Back to homepage",
|
||||||
|
"app.components.NotFoundPage.description": "Not Found",
|
||||||
|
"app.components.NpsSurvey.banner-title": "How likely are you to recommend Strapi to a friend or colleague?",
|
||||||
|
"app.components.NpsSurvey.feedback-response": "Thank you very much for your feedback!",
|
||||||
|
"app.components.NpsSurvey.feedback-question": "Do you have any suggestion for improvements?",
|
||||||
|
"app.components.NpsSurvey.submit-feedback": "Submit Feedback",
|
||||||
|
"app.components.NpsSurvey.dismiss-survey-label": "Dismiss survey",
|
||||||
|
"app.components.NpsSurvey.no-recommendation": "Not at all likely",
|
||||||
|
"app.components.NpsSurvey.happy-to-recommend": "Extremely likely",
|
||||||
|
"app.components.Official": "Official",
|
||||||
|
"app.components.Onboarding.help.button": "Help button",
|
||||||
|
"app.components.Onboarding.label.completed": "% completed",
|
||||||
|
"app.components.Onboarding.link.build-content": "Build a content architecture",
|
||||||
|
"app.components.Onboarding.link.manage-content": "Add & manage content",
|
||||||
|
"app.components.Onboarding.link.manage-media": "Manage media",
|
||||||
|
"app.components.Onboarding.link.more-videos": "Watch more videos",
|
||||||
|
"app.components.Onboarding.title": "Get Started Videos",
|
||||||
|
"app.components.PluginCard.Button.label.download": "Download",
|
||||||
|
"app.components.PluginCard.Button.label.install": "Already installed",
|
||||||
|
"app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed": "The autoReload feature needs to be enabled. Please start your app with `yarn develop`.",
|
||||||
|
"app.components.PluginCard.PopUpWarning.install.impossible.confirm": "I understand!",
|
||||||
|
"app.components.PluginCard.PopUpWarning.install.impossible.environment": "For security reasons, a plugin can only be downloaded in a development environment.",
|
||||||
|
"app.components.PluginCard.PopUpWarning.install.impossible.title": "Downloading is impossible",
|
||||||
|
"app.components.PluginCard.compatible": "Compatible with your app",
|
||||||
|
"app.components.PluginCard.compatibleCommunity": "Compatible with the community",
|
||||||
|
"app.components.PluginCard.more-details": "More details",
|
||||||
|
"app.components.ToggleCheckbox.off-label": "False",
|
||||||
|
"app.components.ToggleCheckbox.on-label": "True",
|
||||||
|
"app.components.Users.MagicLink.connect": "Copy and share this link to give access to this user",
|
||||||
|
"app.components.Users.MagicLink.connect.sso": "Send this link to the user, the first login can be made via a SSO provider",
|
||||||
|
"app.components.Users.ModalCreateBody.block-title.details": "User details",
|
||||||
|
"app.components.Users.ModalCreateBody.block-title.roles": "User's roles",
|
||||||
|
"app.components.Users.ModalCreateBody.block-title.roles.description": "A user can have one or several roles",
|
||||||
|
"app.components.Users.SortPicker.button-label": "Sort by",
|
||||||
|
"app.components.Users.SortPicker.sortby.email_asc": "Email (A to Z)",
|
||||||
|
"app.components.Users.SortPicker.sortby.email_desc": "Email (Z to A)",
|
||||||
|
"app.components.Users.SortPicker.sortby.firstname_asc": "First name (A to Z)",
|
||||||
|
"app.components.Users.SortPicker.sortby.firstname_desc": "First name (Z to A)",
|
||||||
|
"app.components.Users.SortPicker.sortby.lastname_asc": "Last name (A to Z)",
|
||||||
|
"app.components.Users.SortPicker.sortby.lastname_desc": "Last name (Z to A)",
|
||||||
|
"app.components.Users.SortPicker.sortby.username_asc": "Username (A to Z)",
|
||||||
|
"app.components.Users.SortPicker.sortby.username_desc": "Username (Z to A)",
|
||||||
|
"app.components.listPlugins.button": "Add New Plugin",
|
||||||
|
"app.components.listPlugins.title.none": "No plugins installed",
|
||||||
|
"app.components.listPluginsPage.deletePlugin.error": "An error occurred while uninstalling the plugin",
|
||||||
|
"app.containers.App.notification.error.init": "An error occurred while requesting the API",
|
||||||
|
"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin": "If you do not receive this link, please contact your administrator.",
|
||||||
|
"app.containers.AuthPage.ForgotPasswordSuccess.text.email": "It can take a few minutes to receive your password recovery link.",
|
||||||
|
"app.containers.AuthPage.ForgotPasswordSuccess.title": "Email sent",
|
||||||
|
"app.containers.Users.EditPage.form.active.label": "Active",
|
||||||
|
"app.containers.Users.EditPage.header.label": "Edit {name}",
|
||||||
|
"app.containers.Users.EditPage.header.label-loading": "Edit user",
|
||||||
|
"app.containers.Users.EditPage.roles-bloc-title": "Attributed roles",
|
||||||
|
"app.containers.Users.ModalForm.footer.button-success": "Invite user",
|
||||||
|
"app.links.configure-view": "Configure the view",
|
||||||
|
"app.page.not.found": "Oops! We can't seem to find the page you're looking for...",
|
||||||
|
"app.static.links.cheatsheet": "CheatSheet",
|
||||||
|
"app.utils.SelectOption.defaultMessage": " ",
|
||||||
|
"app.utils.add-filter": "Add filter",
|
||||||
|
"app.utils.close-label": "Close",
|
||||||
|
"app.utils.defaultMessage": " ",
|
||||||
|
"app.utils.delete": "Delete",
|
||||||
|
"app.utils.duplicate": "Duplicate",
|
||||||
|
"app.utils.edit": "Edit",
|
||||||
|
"app.utils.errors.file-too-big.message": "The file is too big",
|
||||||
|
"app.utils.filter-value": "Filter value",
|
||||||
|
"app.utils.filters": "Filters",
|
||||||
|
"app.utils.notify.data-loaded": "The {target} has loaded",
|
||||||
|
"app.utils.placeholder.defaultMessage": " ",
|
||||||
|
"app.utils.publish": "Publish",
|
||||||
|
"app.utils.refresh": "Refresh",
|
||||||
|
"app.utils.select-all": "Select all",
|
||||||
|
"app.utils.select-field": "Select field",
|
||||||
|
"app.utils.select-filter": "Select filter",
|
||||||
|
"app.utils.unpublish": "Unpublish",
|
||||||
|
"app.utils.published": "Published",
|
||||||
|
"app.utils.ready-to-publish": "Ready to publish",
|
||||||
|
"app.utils.already-published": "Already published",
|
||||||
|
"app.utils.ready-to-publish-changes": "Ready to publish changes",
|
||||||
|
"app.utils.ready-to-unpublish-changes": "Ready to unpublish",
|
||||||
|
"app.confirm.body": "Are you sure?",
|
||||||
|
"clearLabel": "Clear",
|
||||||
|
"coming.soon": "This content is currently under construction and will be back in a few weeks!",
|
||||||
|
"component.Input.error.validation.integer": "The value must be an integer",
|
||||||
|
"components.AutoReloadBlocker.description": "Run Strapi with one of the following commands:",
|
||||||
|
"components.AutoReloadBlocker.header": "Reload feature is required for this plugin.",
|
||||||
|
"components.ErrorBoundary.title": "Something went wrong...",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$contains": "contains",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$containsi": "contains (case insensitive)",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$endsWith": "ends with",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$endsWithi": "ends with (case insensitive)",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$eq": "is",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$eqi": "is (case insensitive)",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$gt": "is greater than",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$gte": "is greater than or equal to",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$lt": "is lower than",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$lte": "is lower than or equal to",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$ne": "is not",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$nei": "is not (case insensitive)",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$notContains": "does not contain",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$notContainsi": "does not contain (case insensitive)",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$notNull": "is not null",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$null": "is null",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$startsWith": "starts with",
|
||||||
|
"components.FilterOptions.FILTER_TYPES.$startsWithi": "starts with (case insensitive)",
|
||||||
|
"components.Input.error.attribute.key.taken": "This value already exists",
|
||||||
|
"components.Input.error.attribute.sameKeyAndName": "Can't be equal",
|
||||||
|
"components.Input.error.attribute.taken": "This field name already exists",
|
||||||
|
"components.Input.error.contain.lowercase": "Password must contain at least one lowercase character",
|
||||||
|
"components.Input.error.contain.number": "Password must contain at least one number",
|
||||||
|
"components.Input.error.contain.maxBytes": "Password must be less than 73 bytes",
|
||||||
|
"components.Input.error.contain.uppercase": "Password must contain at least one uppercase character",
|
||||||
|
"components.Input.error.contentTypeName.taken": "This name already exists",
|
||||||
|
"components.Input.error.custom-error": "{errorMessage} ",
|
||||||
|
"components.Input.error.password.noMatch": "Passwords do not match",
|
||||||
|
"components.Input.error.validation.email": "This is not a valid email",
|
||||||
|
"components.Input.error.validation.json": "This doesn't match the JSON format",
|
||||||
|
"components.Input.error.validation.lowercase": "The value must be a lowercase string",
|
||||||
|
"components.Input.error.validation.max": "The value is too high (max: {max}).",
|
||||||
|
"components.Input.error.validation.maxLength": "The value is too long (max: {max}).",
|
||||||
|
"components.Input.error.validation.min": "The value is too low (min: {min}).",
|
||||||
|
"components.Input.error.validation.minLength": "The value is too short (min: {min}).",
|
||||||
|
"components.Input.error.validation.minSupMax": "Can't be superior",
|
||||||
|
"components.Input.error.validation.regex": "The value does not match the regex.",
|
||||||
|
"components.Input.error.validation.string": "This is not a valid string.",
|
||||||
|
"components.Input.error.validation.required": "This value is required.",
|
||||||
|
"components.Input.error.validation.unique": "This value is already used.",
|
||||||
|
"components.Input.error.validation.email.withField": "{field} is an invalid email",
|
||||||
|
"components.Input.error.validation.json.withField": "{field} doesn't match the JSON format",
|
||||||
|
"components.Input.error.validation.lowercase.withField": "{field} must be a lowercase string",
|
||||||
|
"components.Input.error.validation.max.withField": "{field} is too high.",
|
||||||
|
"components.Input.error.validation.maxLength.withField": "{field} is too long.",
|
||||||
|
"components.Input.error.validation.min.withField": "{field} is too low.",
|
||||||
|
"components.Input.error.validation.minLength.withField": "{field} is too short.",
|
||||||
|
"components.Input.error.validation.minSupMax.withField": "{field} can't be superior",
|
||||||
|
"components.Input.error.validation.regex.withField": "{field} does not match the regex.",
|
||||||
|
"components.Input.error.validation.required.withField": "{field} is required.",
|
||||||
|
"components.Input.error.validation.unique.withField": "{field} is already used.",
|
||||||
|
"components.InputSelect.option.placeholder": "Choose here",
|
||||||
|
"components.ListRow.empty": "There is no data to be shown.",
|
||||||
|
"components.NotAllowedInput.text": "No permissions to see this field",
|
||||||
|
"components.OverlayBlocker.description": "You're using a feature that needs the server to restart. The page will reload automatically.",
|
||||||
|
"components.OverlayBlocker.description.serverError": "The server should have restarted, please check your logs in the terminal.",
|
||||||
|
"components.OverlayBlocker.title": "Waiting for restart...",
|
||||||
|
"components.OverlayBlocker.title.serverError": "The restart is taking longer than expected",
|
||||||
|
"components.PageFooter.select": "Entries per page",
|
||||||
|
"components.ProductionBlocker.description": "For safety purposes we have to disable this plugin in other environments.",
|
||||||
|
"components.ProductionBlocker.header": "This plugin is only available in development.",
|
||||||
|
"components.ViewSettings.tooltip": "View settings",
|
||||||
|
"components.TableHeader.sort": "Sort on {label}",
|
||||||
|
"components.Blocks.modifiers.bold": "Bold",
|
||||||
|
"components.Blocks.modifiers.italic": "Italic",
|
||||||
|
"components.Blocks.modifiers.underline": "Underline",
|
||||||
|
"components.Blocks.modifiers.strikethrough": "Strikethrough",
|
||||||
|
"components.Blocks.modifiers.code": "Inline code",
|
||||||
|
"components.Blocks.link": "Link",
|
||||||
|
"components.Blocks.expand": "Expand",
|
||||||
|
"components.Blocks.collapse": "Collapse",
|
||||||
|
"components.Blocks.popover.text": "Text",
|
||||||
|
"components.Blocks.popover.text.placeholder": "Enter link text",
|
||||||
|
"components.Blocks.popover.link": "Link",
|
||||||
|
"components.Blocks.popover.link.placeholder": "Paste link",
|
||||||
|
"components.Blocks.popover.link.error": "Please enter valid link",
|
||||||
|
"components.Blocks.popover.remove": "Remove",
|
||||||
|
"components.Blocks.popover.edit": "Edit",
|
||||||
|
"components.Blocks.blocks.selectBlock": "Select a block",
|
||||||
|
"components.Blocks.blocks.text": "Text",
|
||||||
|
"components.Blocks.blocks.heading1": "Heading 1",
|
||||||
|
"components.Blocks.blocks.heading2": "Heading 2",
|
||||||
|
"components.Blocks.blocks.heading3": "Heading 3",
|
||||||
|
"components.Blocks.blocks.heading4": "Heading 4",
|
||||||
|
"components.Blocks.blocks.heading5": "Heading 5",
|
||||||
|
"components.Blocks.blocks.heading6": "Heading 6",
|
||||||
|
"components.Blocks.blocks.code": "Code block",
|
||||||
|
"components.Blocks.blocks.quote": "Quote",
|
||||||
|
"components.Blocks.blocks.image": "Image",
|
||||||
|
"components.Blocks.blocks.unorderedList": "Bulleted list",
|
||||||
|
"components.Blocks.blocks.orderedList": "Numbered list",
|
||||||
|
"components.Blocks.blocks.code.languageLabel": "Select a language",
|
||||||
|
"components.Blocks.dnd.instruction": "To reorder blocks, press Command or Control along with Shift and the Up or Down arrow keys",
|
||||||
|
"components.Blocks.dnd.reorder": "{item}, moved. New position in the editor: {position}.",
|
||||||
|
"components.Wysiwyg.ToggleMode.markdown-mode": "Markdown mode",
|
||||||
|
"components.Wysiwyg.ToggleMode.preview-mode": "Preview mode",
|
||||||
|
"components.Wysiwyg.collapse": "Collapse",
|
||||||
|
"components.Wysiwyg.blocks.code": "Code",
|
||||||
|
"components.Wysiwyg.selectOptions.H1": "Heading 1",
|
||||||
|
"components.Wysiwyg.selectOptions.H2": "Heading 2",
|
||||||
|
"components.Wysiwyg.selectOptions.H3": "Heading 3",
|
||||||
|
"components.Wysiwyg.selectOptions.H4": "Heading 4",
|
||||||
|
"components.Wysiwyg.selectOptions.H5": "Heading 5",
|
||||||
|
"components.Wysiwyg.selectOptions.H6": "Heading 6",
|
||||||
|
"components.Wysiwyg.selectOptions.title": "Headings",
|
||||||
|
"components.WysiwygBottomControls.charactersIndicators": "characters",
|
||||||
|
"components.WysiwygBottomControls.fullscreen": "Expand",
|
||||||
|
"components.WysiwygBottomControls.uploadFiles": "Drag & drop files, paste from the clipboard or {browse}.",
|
||||||
|
"components.WysiwygBottomControls.uploadFiles.browse": "select them",
|
||||||
|
"components.pagination.go-to": "Go to page {page}",
|
||||||
|
"components.pagination.go-to-next": "Go to next page",
|
||||||
|
"components.pagination.go-to-previous": "Go to previous page",
|
||||||
|
"components.pagination.remaining-links": "And {number} other links",
|
||||||
|
"components.popUpWarning.button.cancel": "No, cancel",
|
||||||
|
"components.popUpWarning.button.confirm": "Yes, confirm",
|
||||||
|
"components.popUpWarning.message": "Are you sure you want to delete this?",
|
||||||
|
"components.popUpWarning.title": "Please confirm",
|
||||||
|
"dark": "Dark",
|
||||||
|
"form.button.continue": "Continue",
|
||||||
|
"form.button.done": "Done",
|
||||||
|
"global.actions": "Actions",
|
||||||
|
"global.auditLogs": "Audit Logs",
|
||||||
|
"global.back": "Back",
|
||||||
|
"global.cancel": "Cancel",
|
||||||
|
"global.change-password": "Change password",
|
||||||
|
"global.close": "Close",
|
||||||
|
"global.content-manager": "Content Manager",
|
||||||
|
"global.home": "Home",
|
||||||
|
"global.continue": "Continue",
|
||||||
|
"global.delete": "Delete",
|
||||||
|
"global.delete-target": "Delete {target}",
|
||||||
|
"global.description": "Description",
|
||||||
|
"global.details": "Details",
|
||||||
|
"global.disabled": "Disabled",
|
||||||
|
"global.documentation": "Documentation",
|
||||||
|
"global.enabled": "Enabled",
|
||||||
|
"global.error": "Something went wrong",
|
||||||
|
"global.finish": "Finish",
|
||||||
|
"global.marketplace": "Marketplace",
|
||||||
|
"global.more": "More",
|
||||||
|
"global.name": "Name",
|
||||||
|
"global.new": "New",
|
||||||
|
"global.none": "None",
|
||||||
|
"global.password": "Password",
|
||||||
|
"global.plugins": "Plugins",
|
||||||
|
"global.plugins.content-manager": "Content Manager",
|
||||||
|
"global.plugins.content-manager.description": "Quick way to see, edit and delete the data in your database.",
|
||||||
|
"global.plugins.content-type-builder": "Content Type Builder",
|
||||||
|
"global.plugins.content-type-builder.description": "Modelize the data structure of your API. Create new fields and relations in just a minute. The files are automatically created and updated in your project.",
|
||||||
|
"global.plugins.documentation": "Documentation",
|
||||||
|
"global.plugins.documentation.description": "Create an OpenAPI Document and visualize your API with SWAGGER UI.",
|
||||||
|
"global.plugins.email": "Email",
|
||||||
|
"global.plugins.email.description": "Configure your application to send emails.",
|
||||||
|
"global.plugins.graphql": "GraphQL",
|
||||||
|
"global.plugins.graphql.description": "Adds GraphQL endpoint with default API methods.",
|
||||||
|
"global.plugins.i18n": "Internationalization",
|
||||||
|
"global.plugins.i18n.description": "This plugin enables to create, to read and to update content in different languages, both from the Admin Panel and from the API.",
|
||||||
|
"global.plugins.sentry": "Sentry",
|
||||||
|
"global.plugins.sentry.description": "Send Strapi error events to Sentry.",
|
||||||
|
"global.plugins.upload": "Media Library",
|
||||||
|
"global.plugins.upload.description": "Media file management.",
|
||||||
|
"global.plugins.users-permissions": "Roles & Permissions",
|
||||||
|
"global.plugins.users-permissions.description": "Protect your API with a full authentication process based on JWT. This plugin comes also with an ACL strategy that allows you to manage the permissions between the groups of users.",
|
||||||
|
"global.profile": "Profile settings",
|
||||||
|
"global.prompt.unsaved": "Are you sure you want to leave this page? All your modifications will be lost",
|
||||||
|
"global.reset-password": "Reset password",
|
||||||
|
"global.roles": "Roles",
|
||||||
|
"global.save": "Gorde",
|
||||||
|
"global.search": "Search",
|
||||||
|
"global.see-more": "See more",
|
||||||
|
"global.select": "Select",
|
||||||
|
"global.select-all-entries": "Select all entries",
|
||||||
|
"global.settings": "Settings",
|
||||||
|
"global.type": "Type",
|
||||||
|
"global.users": "Users",
|
||||||
|
"global.fullname": "{firstname} {lastname}",
|
||||||
|
"global.learn-more": "Learn more",
|
||||||
|
"light": "Light",
|
||||||
|
"notification.contentType.relations.conflict": "Content type has conflicting relations",
|
||||||
|
"notification.default.title": "Information:",
|
||||||
|
"notification.ee.warning.at-seat-limit.title": "{licenseLimitStatus, select, OVER_LIMIT {Over} AT_LIMIT {At}} seat limit ({currentUserCount}/{permittedSeats})",
|
||||||
|
"notification.ee.warning.over-.message": "Add seats to {licenseLimitStatus, select, OVER_LIMIT {invite} AT_LIMIT {re-enable}} Users. If you already did it but it's not reflected in Strapi yet, make sure to restart your app.",
|
||||||
|
"notification.error": "An error occurred",
|
||||||
|
"notification.error.invalid.configuration": "You have an invalid configuration, check your server log for more information.",
|
||||||
|
"notification.error.layout": "Couldn't retrieve the layout",
|
||||||
|
"notification.error.tokennamenotunique": "Name already assigned to another token",
|
||||||
|
"notification.form.error.fields": "The form contains some errors",
|
||||||
|
"notification.form.success.fields": "Changes saved",
|
||||||
|
"notification.link-copied": "Link copied into the clipboard",
|
||||||
|
"notification.permission.not-allowed-read": "You are not allowed to see this document",
|
||||||
|
"notification.success.apitokencreated": "API Token successfully created",
|
||||||
|
"notification.success.apitokenedited": "API Token successfully edited",
|
||||||
|
"notification.success.delete": "The item has been deleted",
|
||||||
|
"notification.success.saved": "Saved",
|
||||||
|
"notification.success.title": "Success:",
|
||||||
|
"notification.success.transfertokencreated": "Transfer Token successfully created",
|
||||||
|
"notification.success.transfertokenedited": "Transfer Token successfully edited",
|
||||||
|
"notification.version.update.message": "A new version of Strapi is available!",
|
||||||
|
"notification.warning.404": "404 - Not found",
|
||||||
|
"notification.warning.title": "Warning:",
|
||||||
|
"or": "OR",
|
||||||
|
"request.error.model.unknown": "This model doesn't exist",
|
||||||
|
"selectButtonTitle": "Select",
|
||||||
|
"skipToContent": "Skip to content",
|
||||||
|
"submit": "Submit"
|
||||||
|
}
|
||||||
20
back/src/admin/tsconfig.json
Normal file
20
back/src/admin/tsconfig.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"target": "ESNext",
|
||||||
|
"module": "ESNext",
|
||||||
|
"moduleResolution": "Bundler",
|
||||||
|
"useDefineForClassFields": true,
|
||||||
|
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
||||||
|
"allowJs": false,
|
||||||
|
"skipLibCheck": true,
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"allowSyntheticDefaultImports": true,
|
||||||
|
"strict": true,
|
||||||
|
"forceConsistentCasingInFileNames": true,
|
||||||
|
"resolveJsonModule": true,
|
||||||
|
"noEmit": true,
|
||||||
|
"jsx": "react-jsx"
|
||||||
|
},
|
||||||
|
"include": ["../plugins/**/admin/src/**/*", "./"],
|
||||||
|
"exclude": ["node_modules/", "build/", "dist/", "**/*.test.ts"]
|
||||||
|
}
|
||||||
12
back/src/admin/vite.config.example.ts
Normal file
12
back/src/admin/vite.config.example.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import { mergeConfig, type UserConfig } from 'vite';
|
||||||
|
|
||||||
|
export default (config: UserConfig) => {
|
||||||
|
// Important: always return the modified config
|
||||||
|
return mergeConfig(config, {
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'@': '/src',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
};
|
||||||
10
back/src/admin/vite.config.ts
Normal file
10
back/src/admin/vite.config.ts
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
import { mergeConfig, type UserConfig } from "vite";
|
||||||
|
|
||||||
|
export default (config: UserConfig) => {
|
||||||
|
// Important: always return the modified config
|
||||||
|
return mergeConfig(config, {
|
||||||
|
server: {
|
||||||
|
allowedHosts: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
};
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/* eslint-disable no-unused-vars */
|
|
||||||
module.exports = (config, webpack) => {
|
|
||||||
// Note: we provide webpack above so you should not `require` it
|
|
||||||
// Perform customizations to webpack config
|
|
||||||
// Important: return the modified config
|
|
||||||
return config;
|
|
||||||
};
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "singleType",
|
|
||||||
"collectionName": "bizis",
|
|
||||||
"info": {
|
|
||||||
"singularName": "bizi",
|
|
||||||
"pluralName": "bizis",
|
|
||||||
"displayName": "Bizi"
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"deskribapena": {
|
|
||||||
"type": "text"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* bizi controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::bizi.bizi');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* bizi router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::bizi.bizi');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* bizi service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::bizi.bizi');
|
|
||||||
@@ -16,34 +16,44 @@
|
|||||||
"type": "string",
|
"type": "string",
|
||||||
"required": true
|
"required": true
|
||||||
},
|
},
|
||||||
"slug": {
|
"titularra": {
|
||||||
"type": "uid",
|
"type": "text"
|
||||||
"targetField": "izenburua",
|
},
|
||||||
"required": true
|
"deskribapena": {
|
||||||
|
"type": "richtext"
|
||||||
},
|
},
|
||||||
"hitzordua": {
|
"hitzordua": {
|
||||||
"type": "datetime",
|
"type": "datetime",
|
||||||
"required": true
|
"required": true
|
||||||
},
|
},
|
||||||
"titularra": {
|
|
||||||
"type": "text"
|
|
||||||
},
|
|
||||||
"elkarlana": {
|
|
||||||
"type": "component",
|
|
||||||
"repeatable": true,
|
|
||||||
"component": "bizi.elkarlana"
|
|
||||||
},
|
|
||||||
"labakoUzta": {
|
"labakoUzta": {
|
||||||
"type": "boolean",
|
"type": "boolean"
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
},
|
||||||
"kartela": {
|
"mainMedia": {
|
||||||
"type": "media",
|
"type": "media",
|
||||||
"multiple": false,
|
"multiple": false,
|
||||||
"required": false,
|
"required": false,
|
||||||
"allowedTypes": [
|
"allowedTypes": [
|
||||||
"images"
|
"images",
|
||||||
|
"files"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"type": "uid",
|
||||||
|
"targetField": "izenburua",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"sarrera": {
|
||||||
|
"type": "component",
|
||||||
|
"component": "ekintza.sarrera",
|
||||||
|
"repeatable": false
|
||||||
|
},
|
||||||
|
"edukiLibrea": {
|
||||||
|
"type": "dynamiczone",
|
||||||
|
"components": [
|
||||||
|
"paragraph.youtube",
|
||||||
|
"paragraph.testua",
|
||||||
|
"paragraph.irudia"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"zikloa": {
|
"zikloa": {
|
||||||
@@ -52,8 +62,10 @@
|
|||||||
"target": "api::zikloa.zikloa",
|
"target": "api::zikloa.zikloa",
|
||||||
"inversedBy": "ekintzak"
|
"inversedBy": "ekintzak"
|
||||||
},
|
},
|
||||||
"deskribapena": {
|
"elkarlana": {
|
||||||
"type": "richtext"
|
"type": "component",
|
||||||
|
"component": "ekintza.elkarlana",
|
||||||
|
"repeatable": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ekintza controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::ekintza.ekintza');
|
|
||||||
7
back/src/api/ekintza/controllers/ekintza.ts
Normal file
7
back/src/api/ekintza/controllers/ekintza.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* ekintza controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi'
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::ekintza.ekintza');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ekintza router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::ekintza.ekintza');
|
|
||||||
7
back/src/api/ekintza/routes/ekintza.ts
Normal file
7
back/src/api/ekintza/routes/ekintza.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* ekintza router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::ekintza.ekintza');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ekintza service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::ekintza.ekintza');
|
|
||||||
7
back/src/api/ekintza/services/ekintza.ts
Normal file
7
back/src/api/ekintza/services/ekintza.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* ekintza service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::ekintza.ekintza');
|
||||||
@@ -10,22 +10,23 @@
|
|||||||
"options": {
|
"options": {
|
||||||
"draftAndPublish": false
|
"draftAndPublish": false
|
||||||
},
|
},
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
"attributes": {
|
||||||
"izena": {
|
"izena": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"required": true
|
"required": true
|
||||||
},
|
},
|
||||||
"esteka": {
|
"esteka": {
|
||||||
"type": "string",
|
"type": "string"
|
||||||
"regex": "[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)"
|
|
||||||
},
|
},
|
||||||
"logoa": {
|
"logo": {
|
||||||
"type": "media",
|
"type": "media",
|
||||||
"multiple": false,
|
"multiple": false,
|
||||||
"required": false,
|
"required": false,
|
||||||
"allowedTypes": [
|
"allowedTypes": [
|
||||||
"images"
|
"images",
|
||||||
|
"files",
|
||||||
|
"videos",
|
||||||
|
"audios"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* erakundea controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::erakundea.erakundea');
|
|
||||||
7
back/src/api/erakundea/controllers/erakundea.ts
Normal file
7
back/src/api/erakundea/controllers/erakundea.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* erakundea controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi'
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::erakundea.erakundea');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* erakundea router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::erakundea.erakundea');
|
|
||||||
7
back/src/api/erakundea/routes/erakundea.ts
Normal file
7
back/src/api/erakundea/routes/erakundea.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* erakundea router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::erakundea.erakundea');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* erakundea service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::erakundea.erakundea');
|
|
||||||
7
back/src/api/erakundea/services/erakundea.ts
Normal file
7
back/src/api/erakundea/services/erakundea.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* erakundea service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::erakundea.erakundea');
|
||||||
@@ -12,15 +12,27 @@
|
|||||||
},
|
},
|
||||||
"pluginOptions": {},
|
"pluginOptions": {},
|
||||||
"attributes": {
|
"attributes": {
|
||||||
"deskribapena": {
|
|
||||||
"type": "text"
|
|
||||||
},
|
|
||||||
"izenburua": {
|
"izenburua": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"edukia": {
|
"izanLabazkide": {
|
||||||
"type": "richtext",
|
"type": "component",
|
||||||
"required": false
|
"component": "hasiera.izan-labazkide",
|
||||||
|
"repeatable": false,
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"parteHartu": {
|
||||||
|
"type": "component",
|
||||||
|
"component": "hasiera.parte-hartu",
|
||||||
|
"repeatable": false
|
||||||
|
},
|
||||||
|
"mosaikoa": {
|
||||||
|
"type": "media",
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"allowedTypes": [
|
||||||
|
"images"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* hasiera controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::hasiera.hasiera');
|
|
||||||
7
back/src/api/hasiera/controllers/hasiera.ts
Normal file
7
back/src/api/hasiera/controllers/hasiera.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* hasiera controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi'
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::hasiera.hasiera');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* hasiera router.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::hasiera.hasiera');
|
|
||||||
7
back/src/api/hasiera/routes/hasiera.ts
Normal file
7
back/src/api/hasiera/routes/hasiera.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* hasiera router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::hasiera.hasiera');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* hasiera service.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::hasiera.hasiera');
|
|
||||||
7
back/src/api/hasiera/services/hasiera.ts
Normal file
7
back/src/api/hasiera/services/hasiera.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* hasiera service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::hasiera.hasiera');
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "singleType",
|
|
||||||
"collectionName": "kafetegiak",
|
|
||||||
"info": {
|
|
||||||
"singularName": "kafetegia",
|
|
||||||
"pluralName": "kafetegiak",
|
|
||||||
"displayName": "Kafetegia",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"deskribapena": {
|
|
||||||
"type": "text",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"menua": {
|
|
||||||
"type": "dynamiczone",
|
|
||||||
"components": [
|
|
||||||
"kafetegia.produktu-taldea",
|
|
||||||
"kafetegia.izenburua"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* kafetegia controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::kafetegia.kafetegia');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* kafetegia router.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::kafetegia.kafetegia');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* kafetegia service.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::kafetegia.kafetegia');
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "singleType",
|
|
||||||
"collectionName": "lege_oharrak",
|
|
||||||
"info": {
|
|
||||||
"singularName": "lege-oharra",
|
|
||||||
"pluralName": "lege-oharrak",
|
|
||||||
"displayName": "Lege Oharra",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"edukia": {
|
|
||||||
"type": "richtext",
|
|
||||||
"required": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* lege-oharra controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::lege-oharra.lege-oharra');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* lege-oharra router.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::lege-oharra.lege-oharra');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* lege-oharra service.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::lege-oharra.lege-oharra');
|
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"kind": "collectionType",
|
||||||
|
"collectionName": "orri_basikoak",
|
||||||
|
"info": {
|
||||||
|
"singularName": "orri-basikoa",
|
||||||
|
"pluralName": "orri-basikoak",
|
||||||
|
"displayName": "Orri Basikoa"
|
||||||
|
},
|
||||||
|
"options": {
|
||||||
|
"draftAndPublish": true
|
||||||
|
},
|
||||||
|
"pluginOptions": {},
|
||||||
|
"attributes": {
|
||||||
|
"izenburua": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "text"
|
||||||
|
},
|
||||||
|
"slug": {
|
||||||
|
"type": "uid",
|
||||||
|
"targetField": "izenburua",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"edukiLibrea": {
|
||||||
|
"type": "dynamiczone",
|
||||||
|
"components": [
|
||||||
|
"paragraph.testua",
|
||||||
|
"paragraph.youtube",
|
||||||
|
"paragraph.irudia"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
7
back/src/api/orri-basikoa/controllers/orri-basikoa.ts
Normal file
7
back/src/api/orri-basikoa/controllers/orri-basikoa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* orri-basikoa controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi'
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::orri-basikoa.orri-basikoa');
|
||||||
7
back/src/api/orri-basikoa/routes/orri-basikoa.ts
Normal file
7
back/src/api/orri-basikoa/routes/orri-basikoa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* orri-basikoa router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::orri-basikoa.orri-basikoa');
|
||||||
7
back/src/api/orri-basikoa/services/orri-basikoa.ts
Normal file
7
back/src/api/orri-basikoa/services/orri-basikoa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* orri-basikoa service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::orri-basikoa.orri-basikoa');
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "singleType",
|
|
||||||
"collectionName": "pribatutasun_politikak",
|
|
||||||
"info": {
|
|
||||||
"singularName": "pribatutasun-politika",
|
|
||||||
"pluralName": "pribatutasun-politikak",
|
|
||||||
"displayName": "Pribatutasun politika"
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"edukia": {
|
|
||||||
"type": "richtext"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* pribatutasun-politika controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::pribatutasun-politika.pribatutasun-politika');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* pribatutasun-politika router.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::pribatutasun-politika.pribatutasun-politika');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* pribatutasun-politika service.
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::pribatutasun-politika.pribatutasun-politika');
|
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"kind": "collectionType",
|
"kind": "collectionType",
|
||||||
"collectionName": "zikloas",
|
"collectionName": "zikloak",
|
||||||
"info": {
|
"info": {
|
||||||
"singularName": "zikloa",
|
"singularName": "zikloa",
|
||||||
"pluralName": "zikloas",
|
"pluralName": "zikloak",
|
||||||
"displayName": "Zikloa",
|
"displayName": "Zikloa",
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
@@ -16,13 +16,13 @@
|
|||||||
"type": "string",
|
"type": "string",
|
||||||
"required": true
|
"required": true
|
||||||
},
|
},
|
||||||
"deskribapena": {
|
|
||||||
"type": "richtext"
|
|
||||||
},
|
|
||||||
"slug": {
|
"slug": {
|
||||||
"type": "uid",
|
"type": "uid",
|
||||||
"required": true,
|
"targetField": "izena",
|
||||||
"targetField": "izena"
|
"required": true
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "text"
|
||||||
},
|
},
|
||||||
"ekintzak": {
|
"ekintzak": {
|
||||||
"type": "relation",
|
"type": "relation",
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* zikloa controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::zikloa.zikloa');
|
|
||||||
7
back/src/api/zikloa/controllers/zikloa.ts
Normal file
7
back/src/api/zikloa/controllers/zikloa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* zikloa controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi'
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::zikloa.zikloa');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* zikloa router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::zikloa.zikloa');
|
|
||||||
7
back/src/api/zikloa/routes/zikloa.ts
Normal file
7
back/src/api/zikloa/routes/zikloa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* zikloa router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::zikloa.zikloa');
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* zikloa service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::zikloa.zikloa');
|
|
||||||
7
back/src/api/zikloa/services/zikloa.ts
Normal file
7
back/src/api/zikloa/services/zikloa.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* zikloa service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::zikloa.zikloa');
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
{
|
{
|
||||||
"collectionName": "components_bizi_elkarlanas",
|
"collectionName": "components_ekintza_elkarlanas",
|
||||||
"info": {
|
"info": {
|
||||||
"displayName": "elkarlana",
|
"displayName": "elkarlana",
|
||||||
"icon": "handHeart",
|
"icon": "handHeart"
|
||||||
"description": ""
|
|
||||||
},
|
},
|
||||||
"options": {},
|
"options": {},
|
||||||
"attributes": {
|
"attributes": {
|
||||||
"harremana": {
|
"label": {
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"required": true
|
||||||
},
|
},
|
||||||
"erakundeak": {
|
"erakundeak": {
|
||||||
"type": "relation",
|
"type": "relation",
|
||||||
22
back/src/components/ekintza/sarrera.json
Normal file
22
back/src/components/ekintza/sarrera.json
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_ekintza_sarreras",
|
||||||
|
"info": {
|
||||||
|
"displayName": "Sarrera",
|
||||||
|
"icon": "priceTag",
|
||||||
|
"description": ""
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"label": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "text"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"type": "string",
|
||||||
|
"regex": "^(https?:\\/\\/)?([\\da-z\\.-]+)\\.([a-z\\.]{2,6})(:[0-9]+)?([\\/\\w \\.-]*)*\\/?$"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
24
back/src/components/hasiera/izan-labazkide.json
Normal file
24
back/src/components/hasiera/izan-labazkide.json
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_hasiera_izan_labazkides",
|
||||||
|
"info": {
|
||||||
|
"displayName": "Izan labazkide",
|
||||||
|
"icon": "pencil"
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"izenburua": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "richtext"
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"type": "component",
|
||||||
|
"component": "hasiera.url",
|
||||||
|
"repeatable": false,
|
||||||
|
"required": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {}
|
||||||
|
}
|
||||||
23
back/src/components/hasiera/parte-hartu.json
Normal file
23
back/src/components/hasiera/parte-hartu.json
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_hasiera_parte_hartus",
|
||||||
|
"info": {
|
||||||
|
"displayName": "Parte hartu",
|
||||||
|
"icon": "handHeart"
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"izenburua": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "richtext"
|
||||||
|
},
|
||||||
|
"parteHartzea": {
|
||||||
|
"type": "component",
|
||||||
|
"component": "hasiera.parte-hartzea",
|
||||||
|
"repeatable": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {}
|
||||||
|
}
|
||||||
27
back/src/components/hasiera/parte-hartzea.json
Normal file
27
back/src/components/hasiera/parte-hartzea.json
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_hasiera_parte_hartzeas",
|
||||||
|
"info": {
|
||||||
|
"displayName": "Parte hartzea",
|
||||||
|
"icon": "handHeart"
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"izenburua": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"deskribapena": {
|
||||||
|
"type": "text"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"ikonoa": {
|
||||||
|
"type": "customField",
|
||||||
|
"customField": "plugin::icons-field.icon",
|
||||||
|
"options": {
|
||||||
|
"output": "svg"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {}
|
||||||
|
}
|
||||||
26
back/src/components/hasiera/url.json
Normal file
26
back/src/components/hasiera/url.json
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_hasiera_urls",
|
||||||
|
"info": {
|
||||||
|
"displayName": "url",
|
||||||
|
"icon": "link"
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"label": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"url": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"target": {
|
||||||
|
"type": "enumeration",
|
||||||
|
"enum": [
|
||||||
|
"self",
|
||||||
|
"blank"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"config": {}
|
||||||
|
}
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_kafetegia_alergenoas",
|
|
||||||
"info": {
|
|
||||||
"displayName": "alergenoa",
|
|
||||||
"icon": "cat",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"esnekiak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"required": true,
|
|
||||||
"default": false
|
|
||||||
},
|
|
||||||
"arrautzak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"glutena": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"moluskuak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"krustazeoak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"arraina": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"lupinuak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"fruituLehorrak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"kakahueteak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"sesamoa": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"soja": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"sulfitoak": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"apioa": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"ziapea": {
|
|
||||||
"type": "boolean",
|
|
||||||
"required": true,
|
|
||||||
"default": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_kafetegia_edarias",
|
|
||||||
"info": {
|
|
||||||
"displayName": "produktua",
|
|
||||||
"icon": "coffee",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"beganoa": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"ekologikoa": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"prezioa": {
|
|
||||||
"type": "decimal",
|
|
||||||
"default": 0,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"izena": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"alergenoak": {
|
|
||||||
"displayName": "alergenoa",
|
|
||||||
"type": "component",
|
|
||||||
"repeatable": false,
|
|
||||||
"component": "kafetegia.alergenoa",
|
|
||||||
"required": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_kafetegia_izenburuas",
|
|
||||||
"info": {
|
|
||||||
"displayName": "Izenburua",
|
|
||||||
"icon": "strikeThrough",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburuBalioa": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_kafetegia_produktu_taldeas",
|
|
||||||
"info": {
|
|
||||||
"displayName": "Produktu taldea"
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"produktuak": {
|
|
||||||
"displayName": "produktuak",
|
|
||||||
"type": "component",
|
|
||||||
"repeatable": true,
|
|
||||||
"component": "kafetegia.edaria",
|
|
||||||
"required": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_orokorra_datu_orokorraks",
|
|
||||||
"info": {
|
|
||||||
"displayName": "Datu orokorrak",
|
|
||||||
"icon": "house"
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"izenburua": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"deskribapena": {
|
|
||||||
"type": "text"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"collectionName": "components_helbidea_helbideas",
|
|
||||||
"info": {
|
|
||||||
"displayName": "helbidea",
|
|
||||||
"icon": "home",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {},
|
|
||||||
"attributes": {
|
|
||||||
"lehenLerroa": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"bigarrenLerroa": {
|
|
||||||
"type": "string"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
20
back/src/components/paragraph/irudia.json
Normal file
20
back/src/components/paragraph/irudia.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_paragraph_irudias",
|
||||||
|
"info": {
|
||||||
|
"displayName": "irudia",
|
||||||
|
"icon": "picture",
|
||||||
|
"description": ""
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"media": {
|
||||||
|
"type": "media",
|
||||||
|
"multiple": false,
|
||||||
|
"required": true,
|
||||||
|
"allowedTypes": [
|
||||||
|
"images",
|
||||||
|
"files"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15
back/src/components/paragraph/testua.json
Normal file
15
back/src/components/paragraph/testua.json
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"collectionName": "components_paragraph_testuas",
|
||||||
|
"info": {
|
||||||
|
"displayName": "testua",
|
||||||
|
"icon": "pencil",
|
||||||
|
"description": ""
|
||||||
|
},
|
||||||
|
"options": {},
|
||||||
|
"attributes": {
|
||||||
|
"testua": {
|
||||||
|
"type": "richtext",
|
||||||
|
"required": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user