mirror of
https://gitee.com/nocobase/nocobase.git
synced 2025-05-05 13:39:24 +08:00
Merge branch 'main' into F-1807
This commit is contained in:
commit
656cb51bea
26
CHANGELOG.md
26
CHANGELOG.md
@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
|
|||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [v1.6.2](https://github.com/nocobase/nocobase/compare/v1.6.1...v1.6.2) - 2025-03-12
|
||||||
|
|
||||||
|
### 🐛 Bug Fixes
|
||||||
|
|
||||||
|
- **[client]** date field range selection excludes the max date ([#6418](https://github.com/nocobase/nocobase/pull/6418)) by @katherinehhh
|
||||||
|
|
||||||
|
- **[Notification: In-app message]** Avoid wrong receivers configuration query all users ([#6424](https://github.com/nocobase/nocobase/pull/6424)) by @sheldon66
|
||||||
|
|
||||||
|
- **[Workflow: Manual node]**
|
||||||
|
- Fix migration which missed table prefix and schema logic ([#6425](https://github.com/nocobase/nocobase/pull/6425)) by @mytharcher
|
||||||
|
|
||||||
|
- Change version limit of migration to `<1.7.0` ([#6430](https://github.com/nocobase/nocobase/pull/6430)) by @mytharcher
|
||||||
|
|
||||||
|
## [v1.6.1](https://github.com/nocobase/nocobase/compare/v1.6.0...v1.6.1) - 2025-03-11
|
||||||
|
|
||||||
|
### 🐛 Bug Fixes
|
||||||
|
|
||||||
|
- **[client]**
|
||||||
|
- When using the '$anyOf' operator, the linkage rule is invalid ([#6415](https://github.com/nocobase/nocobase/pull/6415)) by @zhangzhonghe
|
||||||
|
|
||||||
|
- Data not updating in popup windows opened via Link buttons ([#6411](https://github.com/nocobase/nocobase/pull/6411)) by @zhangzhonghe
|
||||||
|
|
||||||
|
- multi-select field value changes and option loss when deleting subtable records ([#6405](https://github.com/nocobase/nocobase/pull/6405)) by @katherinehhh
|
||||||
|
|
||||||
|
- **[Notification: In-app message]** Differentiate the in-app message list background color from the message cards to enhance visual hierarchy and readability. ([#6417](https://github.com/nocobase/nocobase/pull/6417)) by @sheldon66
|
||||||
|
|
||||||
## [v1.6.0](https://github.com/nocobase/nocobase/compare/v1.5.25...v1.6.0) - 2025-03-11
|
## [v1.6.0](https://github.com/nocobase/nocobase/compare/v1.5.25...v1.6.0) - 2025-03-11
|
||||||
|
|
||||||
## New Features
|
## New Features
|
||||||
|
@ -5,6 +5,32 @@
|
|||||||
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/),
|
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/),
|
||||||
并且本项目遵循 [语义化版本](https://semver.org/spec/v2.0.0.html)。
|
并且本项目遵循 [语义化版本](https://semver.org/spec/v2.0.0.html)。
|
||||||
|
|
||||||
|
## [v1.6.2](https://github.com/nocobase/nocobase/compare/v1.6.1...v1.6.2) - 2025-03-12
|
||||||
|
|
||||||
|
### 🐛 修复
|
||||||
|
|
||||||
|
- **[client]** 表单日期字段日期范围,最大日期可选范围少一天 ([#6418](https://github.com/nocobase/nocobase/pull/6418)) by @katherinehhh
|
||||||
|
|
||||||
|
- **[通知:站内信]** 避免错误的接收人配置导致查询出全部用户 ([#6424](https://github.com/nocobase/nocobase/pull/6424)) by @sheldon66
|
||||||
|
|
||||||
|
- **[工作流:人工处理节点]**
|
||||||
|
- 修复遗漏表前缀和 schema 的迁移脚本 ([#6425](https://github.com/nocobase/nocobase/pull/6425)) by @mytharcher
|
||||||
|
|
||||||
|
- 调整迁移脚本版本范围限制为 `<1.7.0` ([#6430](https://github.com/nocobase/nocobase/pull/6430)) by @mytharcher
|
||||||
|
|
||||||
|
## [v1.6.1](https://github.com/nocobase/nocobase/compare/v1.6.0...v1.6.1) - 2025-03-11
|
||||||
|
|
||||||
|
### 🐛 修复
|
||||||
|
|
||||||
|
- **[client]**
|
||||||
|
- 使用“$anyOf”操作符时,联动规则无效 ([#6415](https://github.com/nocobase/nocobase/pull/6415)) by @zhangzhonghe
|
||||||
|
|
||||||
|
- 使用链接按钮打开的弹窗,数据不更新 ([#6411](https://github.com/nocobase/nocobase/pull/6411)) by @zhangzhonghe
|
||||||
|
|
||||||
|
- 子表格删除记录的时候多选字段值错误且选项缺失 ([#6405](https://github.com/nocobase/nocobase/pull/6405)) by @katherinehhh
|
||||||
|
|
||||||
|
- **[通知:站内信]** 在站内信列表中,将背景颜色与消息卡片的颜色区分开,以提升视觉层次感和可读性。 ([#6417](https://github.com/nocobase/nocobase/pull/6417)) by @sheldon66
|
||||||
|
|
||||||
## [v1.6.0](https://github.com/nocobase/nocobase/compare/v1.5.25...v1.6.0) - 2025-03-11
|
## [v1.6.0](https://github.com/nocobase/nocobase/compare/v1.5.25...v1.6.0) - 2025-03-11
|
||||||
|
|
||||||
## 新特性
|
## 新特性
|
||||||
|
@ -17,7 +17,7 @@ server {
|
|||||||
server_name _;
|
server_name _;
|
||||||
root /app/nocobase/packages/app/client/dist;
|
root /app/nocobase/packages/app/client/dist;
|
||||||
index index.html;
|
index index.html;
|
||||||
client_max_body_size 20M;
|
client_max_body_size 0;
|
||||||
|
|
||||||
access_log /var/log/nginx/nocobase.log apm;
|
access_log /var/log/nginx/nocobase.log apm;
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ server {
|
|||||||
server_name _;
|
server_name _;
|
||||||
root /app/nocobase/node_modules/@nocobase/app/dist/client;
|
root /app/nocobase/node_modules/@nocobase/app/dist/client;
|
||||||
index index.html;
|
index index.html;
|
||||||
client_max_body_size 1000M;
|
client_max_body_size 0;
|
||||||
access_log /var/log/nginx/nocobase.log apm;
|
access_log /var/log/nginx/nocobase.log apm;
|
||||||
|
|
||||||
gzip on;
|
gzip on;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"npmClient": "yarn",
|
"npmClient": "yarn",
|
||||||
"useWorkspaces": true,
|
"useWorkspaces": true,
|
||||||
"npmClientArgs": ["--ignore-engines"],
|
"npmClientArgs": ["--ignore-engines"],
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/acl",
|
"name": "@nocobase/acl",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/resourcer": "1.6.0",
|
"@nocobase/resourcer": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"minimatch": "^5.1.1"
|
"minimatch": "^5.1.1"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/actions",
|
"name": "@nocobase/actions",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/cache": "1.6.0",
|
"@nocobase/cache": "1.6.2",
|
||||||
"@nocobase/database": "1.6.0",
|
"@nocobase/database": "1.6.2",
|
||||||
"@nocobase/resourcer": "1.6.0"
|
"@nocobase/resourcer": "1.6.2"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/app",
|
"name": "@nocobase/app",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/database": "1.6.0",
|
"@nocobase/database": "1.6.2",
|
||||||
"@nocobase/preset-nocobase": "1.6.0",
|
"@nocobase/preset-nocobase": "1.6.2",
|
||||||
"@nocobase/server": "1.6.0"
|
"@nocobase/server": "1.6.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@nocobase/client": "1.6.0"
|
"@nocobase/client": "1.6.2"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/auth",
|
"name": "@nocobase/auth",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/actions": "1.6.0",
|
"@nocobase/actions": "1.6.2",
|
||||||
"@nocobase/cache": "1.6.0",
|
"@nocobase/cache": "1.6.2",
|
||||||
"@nocobase/database": "1.6.0",
|
"@nocobase/database": "1.6.2",
|
||||||
"@nocobase/resourcer": "1.6.0",
|
"@nocobase/resourcer": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"@types/jsonwebtoken": "^8.5.8",
|
"@types/jsonwebtoken": "^8.5.8",
|
||||||
"jsonwebtoken": "^8.5.1"
|
"jsonwebtoken": "^8.5.1"
|
||||||
},
|
},
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/build",
|
"name": "@nocobase/build",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "Library build tool based on rollup.",
|
"description": "Library build tool based on rollup.",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
|
2
packages/core/cache/package.json
vendored
2
packages/core/cache/package.json
vendored
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/cache",
|
"name": "@nocobase/cache",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
|
@ -17,7 +17,7 @@ server {
|
|||||||
server_name _;
|
server_name _;
|
||||||
root {{cwd}}/node_modules/@nocobase/app/dist/client;
|
root {{cwd}}/node_modules/@nocobase/app/dist/client;
|
||||||
index index.html;
|
index index.html;
|
||||||
client_max_body_size 1000M;
|
client_max_body_size 0;
|
||||||
access_log /var/log/nginx/nocobase.log apm;
|
access_log /var/log/nginx/nocobase.log apm;
|
||||||
|
|
||||||
gzip on;
|
gzip on;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/cli",
|
"name": "@nocobase/cli",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
@ -8,7 +8,7 @@
|
|||||||
"nocobase": "./bin/index.js"
|
"nocobase": "./bin/index.js"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/app": "1.6.0",
|
"@nocobase/app": "1.6.2",
|
||||||
"@types/fs-extra": "^11.0.1",
|
"@types/fs-extra": "^11.0.1",
|
||||||
"@umijs/utils": "3.5.20",
|
"@umijs/utils": "3.5.20",
|
||||||
"chalk": "^4.1.1",
|
"chalk": "^4.1.1",
|
||||||
@ -25,7 +25,7 @@
|
|||||||
"tsx": "^4.19.0"
|
"tsx": "^4.19.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@nocobase/devtools": "1.6.0"
|
"@nocobase/devtools": "1.6.2"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/client",
|
"name": "@nocobase/client",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"module": "es/index.mjs",
|
"module": "es/index.mjs",
|
||||||
@ -11,7 +11,7 @@
|
|||||||
"@ant-design/icons": "^5.6.1",
|
"@ant-design/icons": "^5.6.1",
|
||||||
"@ant-design/pro-layout": "^7.22.1",
|
"@ant-design/pro-layout": "^7.22.1",
|
||||||
"@antv/g2plot": "^2.4.18",
|
"@antv/g2plot": "^2.4.18",
|
||||||
"@budibase/handlebars-helpers": "^0.14.0",
|
"@budibase/handlebars-helpers": "0.14.0",
|
||||||
"@ctrl/tinycolor": "^3.6.0",
|
"@ctrl/tinycolor": "^3.6.0",
|
||||||
"@dnd-kit/core": "^5.0.1",
|
"@dnd-kit/core": "^5.0.1",
|
||||||
"@dnd-kit/modifiers": "^6.0.0",
|
"@dnd-kit/modifiers": "^6.0.0",
|
||||||
@ -27,9 +27,9 @@
|
|||||||
"@formily/reactive-react": "^2.2.27",
|
"@formily/reactive-react": "^2.2.27",
|
||||||
"@formily/shared": "^2.2.27",
|
"@formily/shared": "^2.2.27",
|
||||||
"@formily/validator": "^2.2.27",
|
"@formily/validator": "^2.2.27",
|
||||||
"@nocobase/evaluators": "1.6.0",
|
"@nocobase/evaluators": "1.6.2",
|
||||||
"@nocobase/sdk": "1.6.0",
|
"@nocobase/sdk": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"ahooks": "^3.7.2",
|
"ahooks": "^3.7.2",
|
||||||
"antd": "5.12.8",
|
"antd": "5.12.8",
|
||||||
"antd-style": "3.7.1",
|
"antd-style": "3.7.1",
|
||||||
|
@ -124,7 +124,7 @@ export function getOperators() {
|
|||||||
return !a.includes(b);
|
return !a.includes(b);
|
||||||
},
|
},
|
||||||
$anyOf: function (a, b) {
|
$anyOf: function (a, b) {
|
||||||
if (a.length === 0) {
|
if (a == null || a.length === 0) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (Array.isArray(a) && Array.isArray(b) && a.some((element) => Array.isArray(element))) {
|
if (Array.isArray(a) && Array.isArray(b) && a.some((element) => Array.isArray(element))) {
|
||||||
@ -347,7 +347,7 @@ export function getOperators() {
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
This helper will defer to the JsonLogic spec as a tie-breaker when different language interpreters define different behavior for the truthiness of primitives. E.g., PHP considers empty arrays to be falsy, but Javascript considers them to be truthy. JsonLogic, as an ecosystem, needs one consistent answer.
|
This helper will defer to the JsonLogic spec as a tie-breaker when different language interpreters define different behavior for the truthiness of primitives. E.g., PHP considers empty arrays to be falsy, but Javascript considers them to be truthy. JsonLogic, as an ecosystem, needs one consistent answer.
|
||||||
|
|
||||||
Spec and rationale here: http://jsonlogic.com/truthy
|
Spec and rationale here: http://jsonlogic.com/truthy
|
||||||
*/
|
*/
|
||||||
jsonLogic.truthy = function (value) {
|
jsonLogic.truthy = function (value) {
|
||||||
@ -397,7 +397,7 @@ export function getOperators() {
|
|||||||
if( 0 ){ 1 }else{ 2 };
|
if( 0 ){ 1 }else{ 2 };
|
||||||
if( 0 ){ 1 }else if( 2 ){ 3 }else{ 4 };
|
if( 0 ){ 1 }else if( 2 ){ 3 }else{ 4 };
|
||||||
if( 0 ){ 1 }else if( 2 ){ 3 }else if( 4 ){ 5 }else{ 6 };
|
if( 0 ){ 1 }else if( 2 ){ 3 }else if( 4 ){ 5 }else{ 6 };
|
||||||
|
|
||||||
The implementation is:
|
The implementation is:
|
||||||
For pairs of values (0,1 then 2,3 then 4,5 etc)
|
For pairs of values (0,1 then 2,3 then 4,5 etc)
|
||||||
If the first evaluates truthy, evaluate and return the second
|
If the first evaluates truthy, evaluate and return the second
|
||||||
|
888
packages/core/client/src/locale/de-DE.json
Normal file
888
packages/core/client/src/locale/de-DE.json
Normal file
@ -0,0 +1,888 @@
|
|||||||
|
{
|
||||||
|
"Display <1><0>10</0><1>20</1><2>50</2><3>100</3></1> items per page": "<1><0>10</0><1>20</1><2>50</2><3>100</3></1> Einträge pro Seite anzeigen",
|
||||||
|
"Meet <1><0>All</0><1>Any</1></1> conditions in the group": "<1><0>Alle</0><1>Beliebige</1></1> Bedingungen in der Gruppe erfüllen",
|
||||||
|
"Open in<1><0>Modal</0><1>Drawer</1><2>Window</2></1>": "Öffnen in<1><0>Modal</0><1>Seitenleiste</1><2>Fenster</2></1>",
|
||||||
|
"{{count}} filter items": "{{count}} Filterelemente",
|
||||||
|
"{{count}} more items": "{{count}} weitere Einträge",
|
||||||
|
"Total {{count}} items": "Insgesamt {{count}} Einträge",
|
||||||
|
"Today": "Heute",
|
||||||
|
"Yesterday": "Gestern",
|
||||||
|
"Tomorrow": "Morgen",
|
||||||
|
"Month": "Monat",
|
||||||
|
"Week": "Woche",
|
||||||
|
"This week": "Diese Woche",
|
||||||
|
"This month": "Dieser Monat",
|
||||||
|
"This year": "Dieses Jahr",
|
||||||
|
"Next year": "Nächstes Jahr",
|
||||||
|
"Last week": "Letzte Woche",
|
||||||
|
"Next week": "Nächste Woche",
|
||||||
|
"Last month": "Letzter Monat",
|
||||||
|
"Next month": "Nächster Monat",
|
||||||
|
"Last quarter": "Letztes Quartal",
|
||||||
|
"This quarter": "Dieses Quartal",
|
||||||
|
"Next quarter": "Nächstes Quartal",
|
||||||
|
"Last year": "Letztes Jahr",
|
||||||
|
"Last 7 days": "Letzte 7 Tage",
|
||||||
|
"Last 30 days": "Letzte 30 Tage",
|
||||||
|
"Last 90 days": "Letzte 90 Tage",
|
||||||
|
"Next 7 days": "Nächste 7 Tage",
|
||||||
|
"Next 30 days": "Nächste 30 Tage",
|
||||||
|
"Next 90 days": "Nächste 90 Tage",
|
||||||
|
"Work week": "Arbeitswoche",
|
||||||
|
"Day": "Tag",
|
||||||
|
"Agenda": "Agenda",
|
||||||
|
"Date": "Datum",
|
||||||
|
"Time": "Zeit",
|
||||||
|
"Event": "Ereignis",
|
||||||
|
"None": "Keine",
|
||||||
|
"Unconnected": "Nicht verbunden",
|
||||||
|
"System settings": "Systemeinstellungen",
|
||||||
|
"System title": "Systemtitel",
|
||||||
|
"Settings": "Einstellungen",
|
||||||
|
"Logo": "Logo",
|
||||||
|
"Add menu item": "Menüpunkt hinzufügen",
|
||||||
|
"Page": "Seite",
|
||||||
|
"Name": "Name",
|
||||||
|
"Icon": "Symbol",
|
||||||
|
"Group": "Gruppe",
|
||||||
|
"Link": "Link",
|
||||||
|
"Tab": "Tab",
|
||||||
|
"Save conditions": "Bedingungen speichern",
|
||||||
|
"Edit menu item": "Menüpunkt bearbeiten",
|
||||||
|
"Move to": "Verschieben nach",
|
||||||
|
"Insert left": "Links einfügen",
|
||||||
|
"Insert right": "Rechts einfügen",
|
||||||
|
"Insert inner": "Innen einfügen",
|
||||||
|
"Delete": "Löschen",
|
||||||
|
"Disassociate": "Trennen",
|
||||||
|
"Disassociate record": "Datensatz trennen",
|
||||||
|
"Are you sure you want to disassociate it?": "Sind Sie sicher, dass Sie die Verbindung trennen möchten?",
|
||||||
|
"UI editor": "UI-Editor",
|
||||||
|
"Collection": "Sammlung",
|
||||||
|
"Collection selector": "Sammlungsauswahl",
|
||||||
|
"Providing certain collections as options for users, typically used in polymorphic or inheritance scenarios": "Bestimmte Sammlungen als Optionen für Benutzer bereitstellen, typischerweise verwendet in polymorphen oder Vererbungsszenarien",
|
||||||
|
"Collections & Fields": "Sammlungen & Felder",
|
||||||
|
"All collections": "Alle Sammlungen",
|
||||||
|
"Add category": "Kategorie hinzufügen",
|
||||||
|
"Enable child collections": "Untersammlungen aktivieren",
|
||||||
|
"Allow adding records to the current collection": "Hinzufügen von Datensätzen zur aktuellen Sammlung erlauben",
|
||||||
|
"Delete category": "Kategorie löschen",
|
||||||
|
"Edit category": "Kategorie bearbeiten",
|
||||||
|
"Collection category": "Sammlungskategorie",
|
||||||
|
"Collection template": "Sammlungsvorlage",
|
||||||
|
"Sort": "Sortieren",
|
||||||
|
"Categories": "Kategorien",
|
||||||
|
"Visible": "Sichtbar",
|
||||||
|
"Read only": "Nur lesen",
|
||||||
|
"Easy reading": "Leicht lesbar",
|
||||||
|
"Hidden": "Versteckt",
|
||||||
|
"Hidden(reserved value)": "Versteckt (reservierter Wert)",
|
||||||
|
"Not required": "Nicht erforderlich",
|
||||||
|
"Value": "Wert",
|
||||||
|
"Disabled": "Deaktiviert",
|
||||||
|
"Enabled": "Aktiviert",
|
||||||
|
"Problematic": "Problematisch",
|
||||||
|
"Setting": "Einstellung",
|
||||||
|
"On": "Ein",
|
||||||
|
"Off": "Aus",
|
||||||
|
"Empty": "Leer",
|
||||||
|
"Linkage rule": "Verknüpfungsregel",
|
||||||
|
"Linkage rules": "Verknüpfungsregeln",
|
||||||
|
"Condition": "Bedingung",
|
||||||
|
"Properties": "Eigenschaften",
|
||||||
|
"Add linkage rule": "Verknüpfungsregel hinzufügen",
|
||||||
|
"Add property": "Eigenschaft hinzufügen",
|
||||||
|
"Category name": "Kategoriename",
|
||||||
|
"Roles & Permissions": "Rollen & Berechtigungen",
|
||||||
|
"Edit profile": "Profil bearbeiten",
|
||||||
|
"Change password": "Passwort ändern",
|
||||||
|
"Old password": "Altes Passwort",
|
||||||
|
"New password": "Neues Passwort",
|
||||||
|
"Switch role": "Rolle wechseln",
|
||||||
|
"Super admin": "Superadministrator",
|
||||||
|
"Language": "Sprache",
|
||||||
|
"Allow sign up": "Registrierung erlauben",
|
||||||
|
"Enable SMS authentication": "SMS-Authentifizierung aktivieren",
|
||||||
|
"Sign out": "Abmelden",
|
||||||
|
"Cancel": "Abbrechen",
|
||||||
|
"Submit": "Absenden",
|
||||||
|
"Close": "Schließen",
|
||||||
|
"Set the data scope": "Datenbereich festlegen",
|
||||||
|
"Set data loading mode": "Datenladungsmodus festlegen",
|
||||||
|
"Load all data when filter is empty": "Alle Daten laden, wenn der Filter leer ist",
|
||||||
|
"Do not load data when filter is empty": "Keine Daten laden, wenn der Filter leer ist",
|
||||||
|
"Data loading mode": "Datenladungsmodus",
|
||||||
|
"Data blocks": "Datenblöcke",
|
||||||
|
"Filter blocks": "Filterblöcke",
|
||||||
|
"Table": "Tabelle",
|
||||||
|
"Table OID(Inheritance)": "Tabellen-OID (Vererbung)",
|
||||||
|
"Form": "Formular",
|
||||||
|
"List": "Liste",
|
||||||
|
"Grid Card": "Rasterkarte",
|
||||||
|
"pixels": "Pixel",
|
||||||
|
"Screen size": "Bildschirmgröße",
|
||||||
|
"Display title": "Titel anzeigen",
|
||||||
|
"Set the count of columns displayed in a row": "Anzahl der Spalten in einer Zeile festlegen",
|
||||||
|
"Column": "Spalte",
|
||||||
|
"Phone device": "Mobiltelefon",
|
||||||
|
"Tablet device": "Tablet",
|
||||||
|
"Desktop device": "Desktop",
|
||||||
|
"Large screen device": "Großer Bildschirm",
|
||||||
|
"Collapse": "Einklappen",
|
||||||
|
"Select data source": "Datenquelle auswählen",
|
||||||
|
"Calendar": "Kalender",
|
||||||
|
"Delete events": "Ereignisse löschen",
|
||||||
|
"This event": "Dieses Ereignis",
|
||||||
|
"This and following events": "Dieses und folgende Ereignisse",
|
||||||
|
"All events": "Alle Ereignisse",
|
||||||
|
"Delete this event?": "Dieses Ereignis löschen?",
|
||||||
|
"Delete Event": "Ereignis löschen",
|
||||||
|
"Kanban": "Kanban",
|
||||||
|
"Gantt": "Gantt",
|
||||||
|
"Create gantt block": "Gantt-Block erstellen",
|
||||||
|
"Progress field": "Fortschrittsfeld",
|
||||||
|
"Time scale": "Zeitskala",
|
||||||
|
"Hour": "Stunde",
|
||||||
|
"Quarter of day": "Viertel des Tages",
|
||||||
|
"Half of day": "Halber Tag",
|
||||||
|
"Year": "Jahr",
|
||||||
|
"QuarterYear": "Jahresquartal",
|
||||||
|
"Select grouping field": "Gruppierungsfeld auswählen",
|
||||||
|
"Media": "Medien",
|
||||||
|
"Markdown": "Markdown",
|
||||||
|
"Wysiwyg": "Wysiwyg",
|
||||||
|
"Chart blocks": "Diagrammblöcke",
|
||||||
|
"Column chart": "Säulendiagramm",
|
||||||
|
"Bar chart": "Balkendiagramm",
|
||||||
|
"Line chart": "Liniendiagramm",
|
||||||
|
"Pie chart": "Kreisdiagramm",
|
||||||
|
"Area chart": "Flächendiagramm",
|
||||||
|
"Other chart": "Anderes Diagramm",
|
||||||
|
"Other blocks": "Andere Blöcke",
|
||||||
|
"In configuration": "In Konfiguration",
|
||||||
|
"Chart title": "Diagrammtitel",
|
||||||
|
"Chart type": "Diagrammtyp",
|
||||||
|
"Chart config": "Diagrammkonfiguration",
|
||||||
|
"Templates": "Vorlagen",
|
||||||
|
"Select template": "Vorlage auswählen",
|
||||||
|
"Action logs": "Aktionslogs",
|
||||||
|
"Create template": "Vorlage erstellen",
|
||||||
|
"Edit markdown": "Markdown bearbeiten",
|
||||||
|
"Add block": "Block hinzufügen",
|
||||||
|
"Add new": "Neu hinzufügen",
|
||||||
|
"Add record": "Datensatz hinzufügen",
|
||||||
|
"Add child": "Kind hinzufügen",
|
||||||
|
"Collapse all": "Alle einklappen",
|
||||||
|
"Expand all": "Alle ausklappen",
|
||||||
|
"Expand/Collapse": "Erweitern/Einklappen",
|
||||||
|
"Default collapse": "Standardmäßig eingeklappt",
|
||||||
|
"Tree table": "Baumtabelle",
|
||||||
|
"Custom field display name": "Benutzerdefinierter Feldanzeigename",
|
||||||
|
"Display fields": "Anzeigefelder der Sammlung",
|
||||||
|
"Edit record": "Datensatz bearbeiten",
|
||||||
|
"Delete menu item": "Menüpunkt löschen",
|
||||||
|
"Add page": "Seite hinzufügen",
|
||||||
|
"Add group": "Gruppe hinzufügen",
|
||||||
|
"Add link": "Link hinzufügen",
|
||||||
|
"Insert above": "Oben einfügen",
|
||||||
|
"Insert below": "Unten einfügen",
|
||||||
|
"Save": "Speichern",
|
||||||
|
"Delete block": "Block löschen",
|
||||||
|
"Are you sure you want to delete it?": "Sind Sie sicher, dass Sie es löschen möchten?",
|
||||||
|
"This is a demo text, **supports Markdown syntax**.": "Dies ist ein Beispieltext, **unterstützt Markdown-Syntax**.",
|
||||||
|
"Filter": "Filter",
|
||||||
|
"Connect data blocks": "Datenblöcke verbinden",
|
||||||
|
"Action type": "Aktionstyp",
|
||||||
|
"Actions": "Aktionen",
|
||||||
|
"Insert": "Einfügen",
|
||||||
|
"Insert if not exists": "Einfügen, wenn nicht vorhanden",
|
||||||
|
"Insert if not exists, or update": "Einfügen, wenn nicht vorhanden, sonst aktualisieren",
|
||||||
|
"Determine whether a record exists by the following fields": "Bestimmen Sie, ob ein Datensatz anhand der folgenden Felder existiert",
|
||||||
|
"Update": "Aktualisieren",
|
||||||
|
"Update record": "Datensatz aktualisieren",
|
||||||
|
"View": "Ansicht",
|
||||||
|
"View record": "Datensatz ansehen",
|
||||||
|
"Refresh": "Aktualisieren",
|
||||||
|
"Data changes": "Datenänderungen",
|
||||||
|
"Field name": "Feldname",
|
||||||
|
"Before change": "Vor der Änderung",
|
||||||
|
"After change": "Nach der Änderung",
|
||||||
|
"Delete record": "Datensatz löschen",
|
||||||
|
"Delete collection": "Sammlung löschen",
|
||||||
|
"Create collection": "Sammlung erstellen",
|
||||||
|
"Collection display name": "Anzeigename der Sammlung",
|
||||||
|
"Collection name": "Sammlungsname",
|
||||||
|
"Inherits": "Erbt von",
|
||||||
|
"Primary key, unique identifier, self growth": "Primärschlüssel, eindeutiger Bezeichner, automatische Erhöhung",
|
||||||
|
"Store the creation user of each record": "Speichert den Erstellungsbenutzer jedes Datensatzes",
|
||||||
|
"Store the last update user of each record": "Speichert den letzten Aktualisierungsbenutzer jedes Datensatzes",
|
||||||
|
"Store the creation time of each record": "Speichert die Erstellungszeit jedes Datensatzes",
|
||||||
|
"Store the last update time of each record": "Speichert die letzte Aktualisierungszeit jedes Datensatzes",
|
||||||
|
"More options": "Weitere Optionen",
|
||||||
|
"Records can be sorted": "Datensätze können sortiert werden",
|
||||||
|
"Calendar collection": "Kalendersammlung",
|
||||||
|
"General collection": "Allgemeine Sammlung",
|
||||||
|
"Connect to database view": "Mit Datenbankansicht verbinden",
|
||||||
|
"Sync from database": "Von Datenbank synchronisieren",
|
||||||
|
"Source collections": "Quellsammlungen",
|
||||||
|
"Field source": "Feldquelle",
|
||||||
|
"Preview": "Vorschau",
|
||||||
|
"Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.": "Zufällig generiert und kann geändert werden. Unterstützt Buchstaben, Zahlen und Unterstriche, muss mit einem Buchstaben beginnen.",
|
||||||
|
"Edit": "Bearbeiten",
|
||||||
|
"Edit collection": "Sammlung bearbeiten",
|
||||||
|
"Configure fields": "Felder konfigurieren",
|
||||||
|
"Configure columns": "Spalten konfigurieren",
|
||||||
|
"Edit field": "Feld bearbeiten",
|
||||||
|
"Override": "Überschreiben",
|
||||||
|
"Override field": "Feld überschreiben",
|
||||||
|
"Configure fields of {{title}}": "Felder von {{title}} konfigurieren",
|
||||||
|
"Association fields filter": "Filter für Verknüpfungsfelder",
|
||||||
|
"PK & FK fields": "PK & FK Felder",
|
||||||
|
"Association fields": "Verknüpfungsfelder",
|
||||||
|
"Choices fields": "Auswahlfelder",
|
||||||
|
"System fields": "Systemfelder",
|
||||||
|
"General fields": "Allgemeine Felder",
|
||||||
|
"Inherited fields": "Geerbte Felder",
|
||||||
|
"Parent collection fields": "Felder der übergeordneten Sammlung",
|
||||||
|
"Basic": "Grundlegend",
|
||||||
|
"Single line text": "Einzeiliger Text",
|
||||||
|
"Long text": "Langer Text",
|
||||||
|
"Phone": "Telefon",
|
||||||
|
"Email": "E-Mail",
|
||||||
|
"Number": "Zahl",
|
||||||
|
"Integer": "Ganzzahl",
|
||||||
|
"Percent": "Prozent",
|
||||||
|
"Password": "Passwort",
|
||||||
|
"Advanced type": "Erweitert",
|
||||||
|
"Formula": "Formel",
|
||||||
|
"Formula description": "Berechnet einen Wert in jedem Datensatz basierend auf anderen Feldern im selben Datensatz.",
|
||||||
|
"Choices": "Auswahlmöglichkeiten",
|
||||||
|
"Checkbox": "Kontrollkästchen",
|
||||||
|
"Single select": "Einzelauswahl",
|
||||||
|
"Multiple select": "Mehrfachauswahl",
|
||||||
|
"Radio group": "Radiogruppe",
|
||||||
|
"Checkbox group": "Kontrollkästchengruppe",
|
||||||
|
"China region": "China-Region",
|
||||||
|
"Date & Time": "Datum & Zeit",
|
||||||
|
"Datetime": "Datum/Zeit",
|
||||||
|
"Relation": "Beziehung",
|
||||||
|
"Link to": "Verknüpfen mit",
|
||||||
|
"Link to description": "Wird verwendet, um Sammlungsbeziehungen schnell zu erstellen und ist mit den meisten gängigen Szenarien kompatibel. Geeignet für Nicht-Entwickler. Als Feld dargestellt, ist es eine Dropdown-Auswahl zur Auswahl von Datensätzen aus der Zielsammlung. Nach der Erstellung werden gleichzeitig die zugehörigen Felder der aktuellen Sammlung in der Zielsammlung generiert.",
|
||||||
|
"Sub-table": "Untertabelle",
|
||||||
|
"Sub-details": "Unterdetails",
|
||||||
|
"Sub-form(Popover)": "Unterformular (Popover)",
|
||||||
|
"System info": "Systeminformationen",
|
||||||
|
"Created at": "Erstellt am",
|
||||||
|
"Last updated at": "Zuletzt aktualisiert am",
|
||||||
|
"Created by": "Erstellt von",
|
||||||
|
"Last updated by": "Zuletzt aktualisiert von",
|
||||||
|
"Add field": "Feld hinzufügen",
|
||||||
|
"Field display name": "Feldanzeigename",
|
||||||
|
"Field type": "Feldtyp",
|
||||||
|
"Field interface": "Feldschnittstelle",
|
||||||
|
"Date format": "Datumsformat",
|
||||||
|
"Year/Month/Day": "Jahr/Monat/Tag",
|
||||||
|
"Year-Month-Day": "Jahr-Monat-Tag",
|
||||||
|
"Day/Month/Year": "Tag/Monat/Jahr",
|
||||||
|
"Show time": "Zeit anzeigen",
|
||||||
|
"Time format": "Zeitformat",
|
||||||
|
"12 hour": "12 Stunden",
|
||||||
|
"24 hour": "24 Stunden",
|
||||||
|
"Relationship type": "Beziehungstyp",
|
||||||
|
"Inverse relationship type": "Inverse Beziehungstyp",
|
||||||
|
"Source collection": "Quellsammlung",
|
||||||
|
"Source key": "Quellschlüssel",
|
||||||
|
"Target collection": "Zielsammlung",
|
||||||
|
"Through collection": "Zwischensammlung",
|
||||||
|
"Target key": "Zielschlüssel",
|
||||||
|
"Foreign key": "Fremdschlüssel",
|
||||||
|
"One to one": "Eins zu Eins",
|
||||||
|
"One to many": "Eins zu Viele",
|
||||||
|
"Many to one": "Viele zu Eins",
|
||||||
|
"Many to many": "Viele zu Viele",
|
||||||
|
"Foreign key 1": "Fremdschlüssel 1",
|
||||||
|
"Foreign key 2": "Fremdschlüssel 2",
|
||||||
|
"One to one description": "Wird verwendet, um eine Eins-zu-Eins-Beziehung zu erstellen. Zum Beispiel hat ein Benutzer ein Profil.",
|
||||||
|
"One to many description": "Wird verwendet, um eine Eins-zu-Viele-Beziehung zu erstellen. Zum Beispiel hat ein Land viele Städte und eine Stadt kann nur in einem Land sein. Als Feld dargestellt, ist es eine Untertabelle, die die Datensätze der zugehörigen Sammlung anzeigt. Bei der Erstellung wird automatisch ein Viele-zu-Eins-Feld in der zugehörigen Sammlung generiert.",
|
||||||
|
"Many to one description": "Wird verwendet, um Viele-zu-Eins-Beziehungen zu erstellen. Zum Beispiel kann eine Stadt nur zu einem Land gehören und ein Land kann viele Städte haben. Als Feld dargestellt, ist es eine Dropdown-Auswahl zur Auswahl eines Datensatzes aus der zugehörigen Sammlung. Nach der Erstellung wird automatisch ein Eins-zu-Viele-Feld in der zugehörigen Sammlung generiert.",
|
||||||
|
"Many to many description": "Wird verwendet, um Viele-zu-Viele-Beziehungen zu erstellen. Zum Beispiel hat ein Schüler viele Lehrer und ein Lehrer hat viele Schüler. Als Feld dargestellt, ist es eine Dropdown-Auswahl zur Auswahl von Datensätzen aus der zugehörigen Sammlung.",
|
||||||
|
"Generated automatically if left blank": "Wird automatisch generiert, wenn leer gelassen",
|
||||||
|
"Display association fields": "Verknüpfungsfelder anzeigen",
|
||||||
|
"Display field title": "Feldtitel anzeigen",
|
||||||
|
"Field component": "Feldkomponente",
|
||||||
|
"Allow multiple": "Mehrere erlauben",
|
||||||
|
"Quick upload": "Schnelles Hochladen",
|
||||||
|
"Select file": "Datei auswählen",
|
||||||
|
"Subtable": "Untertabelle",
|
||||||
|
"Sub-form": "Unterformular",
|
||||||
|
"Field mode": "Feldmodus",
|
||||||
|
"Allow add new data": "Hinzufügen neuer Daten erlauben",
|
||||||
|
"Record picker": "Datensatzauswahl",
|
||||||
|
"Toggles the subfield mode": "Schaltet den Unterfeld-Modus um",
|
||||||
|
"Selector mode": "Auswahlmodus",
|
||||||
|
"Subtable mode": "Untertabellenmodus",
|
||||||
|
"Subform mode": "Unterformularmodus",
|
||||||
|
"Edit block title": "Blocktitel bearbeiten",
|
||||||
|
"Block title": "Blocktitel",
|
||||||
|
"Pattern": "Muster",
|
||||||
|
"Operator": "Operator",
|
||||||
|
"Editable": "Bearbeitbar",
|
||||||
|
"Readonly": "Schreibgeschützt",
|
||||||
|
"Easy-reading": "Leicht lesbar",
|
||||||
|
"Add filter": "Filter hinzufügen",
|
||||||
|
"Add filter group": "Filtergruppe hinzufügen",
|
||||||
|
"Comparision": "Vergleich",
|
||||||
|
"is": "ist",
|
||||||
|
"is not": "ist nicht",
|
||||||
|
"contains": "enthält",
|
||||||
|
"does not contain": "enthält nicht",
|
||||||
|
"starts with": "beginnt mit",
|
||||||
|
"not starts with": "beginnt nicht mit",
|
||||||
|
"ends with": "endet mit",
|
||||||
|
"not ends with": "endet nicht mit",
|
||||||
|
"is empty": "ist leer",
|
||||||
|
"is not empty": "ist nicht leer",
|
||||||
|
"Edit chart": "Diagramm bearbeiten",
|
||||||
|
"Add text": "Text hinzufügen",
|
||||||
|
"Filterable fields": "Filterbare Felder",
|
||||||
|
"Edit button": "Schaltfläche bearbeiten",
|
||||||
|
"Hide": "Ausblenden",
|
||||||
|
"Enable actions": "Aktionen aktivieren",
|
||||||
|
"Import": "Importieren",
|
||||||
|
"Export": "Exportieren",
|
||||||
|
"Customize": "Anpassen",
|
||||||
|
"Custom": "Benutzerdefiniert",
|
||||||
|
"Function": "Funktion",
|
||||||
|
"Popup form": "Popup-Formular",
|
||||||
|
"Flexible popup": "Flexibles Popup",
|
||||||
|
"Configure actions": "Aktionen konfigurieren",
|
||||||
|
"Display order number": "Bestellnummer anzeigen",
|
||||||
|
"Enable drag and drop sorting": "Drag & Drop-Sortierung aktivieren",
|
||||||
|
"Triggered when the row is clicked": "Wird ausgelöst, wenn auf die Zeile geklickt wird",
|
||||||
|
"Add tab": "Tab hinzufügen",
|
||||||
|
"Disable tabs": "Tabs deaktivieren",
|
||||||
|
"Details": "Details",
|
||||||
|
"Edit form": "Formular bearbeiten",
|
||||||
|
"Create form": "Formular erstellen",
|
||||||
|
"Form (Edit)": "Formular (Bearbeiten)",
|
||||||
|
"Form (Add new)": "Formular (Neu hinzufügen)",
|
||||||
|
"Edit tab": "Tab bearbeiten",
|
||||||
|
"Relationship blocks": "Beziehungsblöcke",
|
||||||
|
"Select record": "Datensatz auswählen",
|
||||||
|
"Display name": "Anzeigename",
|
||||||
|
"Select icon": "Symbol auswählen",
|
||||||
|
"Custom column name": "Benutzerdefinierter Spaltenname",
|
||||||
|
"Edit description": "Beschreibung bearbeiten",
|
||||||
|
"Required": "Erforderlich",
|
||||||
|
"Unique": "Eindeutig",
|
||||||
|
"Primary": "Primär",
|
||||||
|
"Auto increment": "Automatische Erhöhung",
|
||||||
|
"Label field": "Beschriftungsfeld",
|
||||||
|
"Default is the ID field": "Standard ist das ID-Feld",
|
||||||
|
"Set default sorting rules": "Standardsortierregeln festlegen",
|
||||||
|
"Set validation rules": "Validierungsregeln festlegen",
|
||||||
|
"Max length": "Maximale Länge",
|
||||||
|
"Min length": "Minimale Länge",
|
||||||
|
"Maximum": "Maximum",
|
||||||
|
"Minimum": "Minimum",
|
||||||
|
"Max length must greater than min length": "Maximale Länge muss größer als minimale Länge sein",
|
||||||
|
"Min length must less than max length": "Minimale Länge muss kleiner als maximale Länge sein",
|
||||||
|
"Maximum must greater than minimum": "Maximum muss größer als Minimum sein",
|
||||||
|
"Minimum must less than maximum": "Minimum muss kleiner als Maximum sein",
|
||||||
|
"Validation rule": "Validierungsregel",
|
||||||
|
"Add validation rule": "Validierungsregel hinzufügen",
|
||||||
|
"Format": "Format",
|
||||||
|
"Regular expression": "Regulärer Ausdruck",
|
||||||
|
"Error message": "Fehlermeldung",
|
||||||
|
"Length": "Länge",
|
||||||
|
"The field value cannot be greater than ": "Der Feldwert darf nicht größer sein als ",
|
||||||
|
"The field value cannot be less than ": "Der Feldwert darf nicht kleiner sein als ",
|
||||||
|
"The field value is not an integer number": "Der Feldwert ist keine ganze Zahl",
|
||||||
|
"Set default value": "Standardwert festlegen",
|
||||||
|
"Default value": "Standardwert",
|
||||||
|
"is before": "ist vor",
|
||||||
|
"is after": "ist nach",
|
||||||
|
"is on or after": "ist am oder nach",
|
||||||
|
"is on or before": "ist am oder vor",
|
||||||
|
"is between": "ist zwischen",
|
||||||
|
"Upload": "Hochladen",
|
||||||
|
"Select level": "Ebene auswählen",
|
||||||
|
"Province": "Provinz",
|
||||||
|
"City": "Stadt",
|
||||||
|
"Area": "Gebiet",
|
||||||
|
"Street": "Straße",
|
||||||
|
"Village": "Dorf",
|
||||||
|
"Must select to the last level": "Muss bis zur letzten Ebene ausgewählt werden",
|
||||||
|
"Move {{title}} to": "{{title}} verschieben nach",
|
||||||
|
"Target position": "Zielposition",
|
||||||
|
"After": "Nach",
|
||||||
|
"Before": "Vor",
|
||||||
|
"Add {{type}} before \"{{title}}\"": "{{type}} vor \"{{title}}\" hinzufügen",
|
||||||
|
"Add {{type}} after \"{{title}}\"": "{{type}} nach \"{{title}}\" hinzufügen",
|
||||||
|
"Add {{type}} in \"{{title}}\"": "{{type}} in \"{{title}}\" hinzufügen",
|
||||||
|
"Original name": "Ursprünglicher Name",
|
||||||
|
"Custom name": "Benutzerdefinierter Name",
|
||||||
|
"Custom Title": "Benutzerdefinierter Titel",
|
||||||
|
"Options": "Optionen",
|
||||||
|
"Option value": "Optionswert",
|
||||||
|
"Option label": "Optionsbezeichnung",
|
||||||
|
"Color": "Farbe",
|
||||||
|
"Background Color": "Hintergrundfarbe",
|
||||||
|
"Text Align": "Textausrichtung",
|
||||||
|
"Add option": "Option hinzufügen",
|
||||||
|
"Related collection": "Zugehörige Sammlung",
|
||||||
|
"Allow linking to multiple records": "Verknüpfung mit mehreren Datensätzen erlauben",
|
||||||
|
"Allow uploading multiple files": "Hochladen mehrerer Dateien erlauben",
|
||||||
|
"Configure calendar": "Kalender konfigurieren",
|
||||||
|
"Title field": "Titelfeld",
|
||||||
|
"Custom title": "Benutzerdefinierter Titel",
|
||||||
|
"Daily": "Täglich",
|
||||||
|
"Weekly": "Wöchentlich",
|
||||||
|
"Monthly": "Monatlich",
|
||||||
|
"Yearly": "Jährlich",
|
||||||
|
"Repeats": "Wiederholungen",
|
||||||
|
"Show lunar": "Mondkalender anzeigen",
|
||||||
|
"Start date field": "Startdatumsfeld",
|
||||||
|
"End date field": "Enddatumsfeld",
|
||||||
|
"Navigate": "Navigieren",
|
||||||
|
"Title": "Titel",
|
||||||
|
"Description": "Beschreibung",
|
||||||
|
"Select view": "Ansicht auswählen",
|
||||||
|
"Reset": "Zurücksetzen",
|
||||||
|
"Importable fields": "Importierbare Felder",
|
||||||
|
"Exportable fields": "Exportierbare Felder",
|
||||||
|
"Saved successfully": "Erfolgreich gespeichert",
|
||||||
|
"Nickname": "Spitzname",
|
||||||
|
"Sign in": "Anmelden",
|
||||||
|
"Sign in via account": "Über Konto anmelden",
|
||||||
|
"Sign in via phone": "Über Telefon anmelden",
|
||||||
|
"Create an account": "Konto erstellen",
|
||||||
|
"Sign up": "Registrieren",
|
||||||
|
"Confirm password": "Passwort bestätigen",
|
||||||
|
"Log in with an existing account": "Mit einem bestehenden Konto anmelden",
|
||||||
|
"Signed up successfully. It will jump to the login page.": "Registrierung erfolgreich. Sie werden zur Anmeldeseite weitergeleitet.",
|
||||||
|
"Password mismatch": "Passwörter stimmen nicht überein",
|
||||||
|
"Users": "Benutzer",
|
||||||
|
"Verification code": "Bestätigungscode",
|
||||||
|
"Send code": "Code senden",
|
||||||
|
"Retry after {{count}} seconds": "Wiederholen nach {{count}} Sekunden",
|
||||||
|
"Roles": "Rollen",
|
||||||
|
"Add role": "Rolle hinzufügen",
|
||||||
|
"Role name": "Rollenname",
|
||||||
|
"Configure": "Konfigurieren",
|
||||||
|
"Configure permissions": "Berechtigungen konfigurieren",
|
||||||
|
"Edit role": "Rolle bearbeiten",
|
||||||
|
"Action permissions": "Aktionsberechtigungen",
|
||||||
|
"Menu permissions": "Menüberechtigungen",
|
||||||
|
"Menu item name": "Menüpunktname",
|
||||||
|
"Allow access": "Zugriff erlauben",
|
||||||
|
"Action name": "Aktionsname",
|
||||||
|
"Allow action": "Aktion erlauben",
|
||||||
|
"Action scope": "Aktionsbereich",
|
||||||
|
"Operate on new data": "Mit neuen Daten arbeiten",
|
||||||
|
"Operate on existing data": "Mit vorhandenen Daten arbeiten",
|
||||||
|
"Yes": "Ja",
|
||||||
|
"No": "Nein",
|
||||||
|
"Red": "Rot",
|
||||||
|
"Magenta": "Magenta",
|
||||||
|
"Volcano": "Vulkan",
|
||||||
|
"Orange": "Orange",
|
||||||
|
"Gold": "Gold",
|
||||||
|
"Lime": "Limette",
|
||||||
|
"Green": "Grün",
|
||||||
|
"Cyan": "Cyan",
|
||||||
|
"Blue": "Blau",
|
||||||
|
"Geek blue": "Geek-Blau",
|
||||||
|
"Purple": "Lila",
|
||||||
|
"Default": "Standard",
|
||||||
|
"Add card": "Karte hinzufügen",
|
||||||
|
"edit title": "Titel bearbeiten",
|
||||||
|
"Turn pages": "Seiten umblättern",
|
||||||
|
"Others": "Andere",
|
||||||
|
"Other records": "Andere Datensätze",
|
||||||
|
"Save as template": "Als Vorlage speichern",
|
||||||
|
"Save as block template": "Als Blockvorlage speichern",
|
||||||
|
"Block templates": "Blockvorlagen",
|
||||||
|
"Block template": "Blockvorlage",
|
||||||
|
"Convert reference to duplicate": "Referenz in Duplikat umwandeln",
|
||||||
|
"Template name": "Vorlagenname",
|
||||||
|
"Block type": "Blocktyp",
|
||||||
|
"No blocks to connect": "Keine Blöcke zum Verbinden",
|
||||||
|
"Action column": "Aktionsspalte",
|
||||||
|
"Records per page": "Datensätze pro Seite",
|
||||||
|
"(Fields only)": "(Nur Felder)",
|
||||||
|
"Button title": "Schaltflächentitel",
|
||||||
|
"Button icon": "Schaltflächensymbol",
|
||||||
|
"Submitted successfully": "Erfolgreich übermittelt",
|
||||||
|
"Operation succeeded": "Operation erfolgreich",
|
||||||
|
"Operation failed": "Operation fehlgeschlagen",
|
||||||
|
"Open mode": "Öffnungsmodus",
|
||||||
|
"Popup size": "Popup-Größe",
|
||||||
|
"Small": "Klein",
|
||||||
|
"Middle": "Mittel",
|
||||||
|
"Large": "Groß",
|
||||||
|
"Size": "Größe",
|
||||||
|
"Oversized": "Übergroß",
|
||||||
|
"Auto": "Automatisch",
|
||||||
|
"Object Fit": "Objektanpassung",
|
||||||
|
"Cover": "Abdecken",
|
||||||
|
"Fill": "Füllen",
|
||||||
|
"Contain": "Enthalten",
|
||||||
|
"Scale Down": "Verkleinern",
|
||||||
|
"Menu item title": "Menüpunkttitel",
|
||||||
|
"Menu item icon": "Menüpunktsymbol",
|
||||||
|
"Target": "Ziel",
|
||||||
|
"Position": "Position",
|
||||||
|
"Insert before": "Davor einfügen",
|
||||||
|
"Insert after": "Danach einfügen",
|
||||||
|
"UI Editor": "UI-Editor",
|
||||||
|
"ASC": "Aufsteigend",
|
||||||
|
"DESC": "Absteigend",
|
||||||
|
"Add sort field": "Sortierfeld hinzufügen",
|
||||||
|
"ID": "ID",
|
||||||
|
"Identifier for program usage. Support letters, numbers and underscores, must start with an letter.": "Bezeichner für Programmnutzung. Unterstützt Buchstaben, Zahlen und Unterstriche, muss mit einem Buchstaben beginnen.",
|
||||||
|
"Drawer": "Seitenleiste",
|
||||||
|
"Dialog": "Dialog",
|
||||||
|
"Delete action": "Aktion löschen",
|
||||||
|
"Custom column title": "Benutzerdefinierter Spaltentitel",
|
||||||
|
"Column title": "Spaltentitel",
|
||||||
|
"Original title: ": "Ursprünglicher Titel: ",
|
||||||
|
"Delete table column": "Tabellenspalte löschen",
|
||||||
|
"Skip required validation": "Erforderliche Validierung überspringen",
|
||||||
|
"Form values": "Formularwerte",
|
||||||
|
"Fields values": "Feldwerte",
|
||||||
|
"The field has been deleted": "Das Feld wurde gelöscht",
|
||||||
|
"When submitting the following fields, the saved values are": "Beim Absenden der folgenden Felder sind die gespeicherten Werte",
|
||||||
|
"After successful submission": "Nach erfolgreicher Übermittlung",
|
||||||
|
"Then": "Dann",
|
||||||
|
"Stay on current page": "Auf aktueller Seite bleiben",
|
||||||
|
"Redirect to": "Weiterleiten zu",
|
||||||
|
"Save action": "Aktion speichern",
|
||||||
|
"Exists": "Existiert",
|
||||||
|
"Add condition": "Bedingung hinzufügen",
|
||||||
|
"Add condition group": "Bedingungsgruppe hinzufügen",
|
||||||
|
"exists": "existiert",
|
||||||
|
"not exists": "existiert nicht",
|
||||||
|
"Style": "Stil",
|
||||||
|
"=": "=",
|
||||||
|
"≠": "≠",
|
||||||
|
">": ">",
|
||||||
|
"≥": "≥",
|
||||||
|
"<": "<",
|
||||||
|
"≤": "≤",
|
||||||
|
"Role UID": "Rollen-UID",
|
||||||
|
"Precision": "Genauigkeit",
|
||||||
|
"Formula mode": "Formelmodus",
|
||||||
|
"Expression": "Ausdruck",
|
||||||
|
"Input +, -, *, /, ( ) to calculate, input @ to open field variables.": "Geben Sie +, -, *, /, ( ) zum Berechnen ein, geben Sie @ ein, um Feldvariablen zu öffnen.",
|
||||||
|
"Formula error.": "Formelfehler.",
|
||||||
|
"Rich Text": "Rich Text",
|
||||||
|
"Junction collection": "Verbindungssammlung",
|
||||||
|
"Leave it blank, unless you need a custom intermediate table": "Lassen Sie es leer, es sei denn, Sie benötigen eine benutzerdefinierte Zwischentabelle",
|
||||||
|
"Fields": "Felder",
|
||||||
|
"Edit field title": "Feldtitel bearbeiten",
|
||||||
|
"Field title": "Feldtitel",
|
||||||
|
"Original field title: ": "Ursprünglicher Feldtitel: ",
|
||||||
|
"Edit tooltip": "Tooltip bearbeiten",
|
||||||
|
"Delete field": "Feld löschen",
|
||||||
|
"Select collection": "Sammlung auswählen",
|
||||||
|
"Blank block": "Leerer Block",
|
||||||
|
"Duplicate template": "Vorlage duplizieren",
|
||||||
|
"Reference template": "Referenzvorlage",
|
||||||
|
"Create calendar block": "Kalenderblock erstellen",
|
||||||
|
"Create kanban block": "Kanban-Block erstellen",
|
||||||
|
"Grouping field": "Gruppierungsfeld",
|
||||||
|
"Single select and radio fields can be used as the grouping field": "Einzelauswahl- und Radiofelder können als Gruppierungsfeld verwendet werden",
|
||||||
|
"Tab name": "Tab-Name",
|
||||||
|
"Current record blocks": "Blöcke des aktuellen Datensatzes",
|
||||||
|
"Popup message": "Popup-Nachricht",
|
||||||
|
"Delete role": "Rolle löschen",
|
||||||
|
"Role display name": "Rollenanzeigename",
|
||||||
|
"Default role": "Standardrolle",
|
||||||
|
"All collections use general action permissions by default; permission configured individually will override the default one.": "Alle Sammlungen verwenden standardmäßig allgemeine Aktionsberechtigungen; individuell konfigurierte Berechtigungen überschreiben die Standardeinstellung.",
|
||||||
|
"Allows configuration of the whole system, including UI, collections, permissions, etc.": "Ermöglicht die Konfiguration des gesamten Systems, einschließlich UI, Sammlungen, Berechtigungen usw.",
|
||||||
|
"New menu items are allowed to be accessed by default.": "Neue Menüpunkte dürfen standardmäßig zugegriffen werden.",
|
||||||
|
"Global permissions": "Globale Berechtigungen",
|
||||||
|
"General permissions": "Allgemeine Berechtigungen",
|
||||||
|
"Global action permissions": "Globale Aktionsberechtigungen",
|
||||||
|
"General action permissions": "Allgemeine Aktionsberechtigungen",
|
||||||
|
"Plugin settings permissions": "Plugin-Einstellungsberechtigungen",
|
||||||
|
"Allow to desgin pages": "Erlauben, Seiten zu gestalten",
|
||||||
|
"Allow to manage plugins": "Erlauben, Plugins zu verwalten",
|
||||||
|
"Allow to configure plugins": "Erlauben, Plugins zu konfigurieren",
|
||||||
|
"Allows to configure interface": "Erlaubt die Konfiguration der Schnittstelle",
|
||||||
|
"Allows to install, activate, disable plugins": "Erlaubt das Installieren, Aktivieren und Deaktivieren von Plugins",
|
||||||
|
"Allows to configure plugins": "Erlaubt die Konfiguration von Plugins",
|
||||||
|
"Action display name": "Anzeigeame der Aktion",
|
||||||
|
"Allow": "Erlauben",
|
||||||
|
"Data scope": "Datenbereich",
|
||||||
|
"Action on new records": "Aktion für neue Datensätze",
|
||||||
|
"Action on existing records": "Aktion für bestehende Datensätze",
|
||||||
|
"All records": "Alle Datensätze",
|
||||||
|
"Own records": "Eigene Datensätze",
|
||||||
|
"Permission policy": "Berechtigungsrichtlinie",
|
||||||
|
"Individual": "Individuell",
|
||||||
|
"General": "Allgemein",
|
||||||
|
"Accessible": "Zugänglich",
|
||||||
|
"Configure permission": "Berechtigung konfigurieren",
|
||||||
|
"Action permission": "Aktionsberechtigung",
|
||||||
|
"Field permission": "Feldberechtigung",
|
||||||
|
"Scope name": "Bereichsname",
|
||||||
|
"Unsaved changes": "Ungespeicherte Änderungen",
|
||||||
|
"Are you sure you don't want to save?": "Sind Sie sicher, dass Sie nicht speichern möchten?",
|
||||||
|
"Dragging": "Ziehen",
|
||||||
|
"Popup": "Popup",
|
||||||
|
"Trigger workflow": "Workflow auslösen",
|
||||||
|
"Request API": "API anfragen",
|
||||||
|
"Assign field values": "Feldwerte zuweisen",
|
||||||
|
"Constant value": "Konstanter Wert",
|
||||||
|
"Dynamic value": "Dynamischer Wert",
|
||||||
|
"Current user": "Aktueller Benutzer",
|
||||||
|
"Current role": "Aktuelle Rolle",
|
||||||
|
"Current record": "Aktueller Datensatz",
|
||||||
|
"Current collection": "Aktuelle Sammlung",
|
||||||
|
"Other collections": "Andere Sammlungen",
|
||||||
|
"Current popup record": "Aktueller Popup-Datensatz",
|
||||||
|
"Parent popup record": "Übergeordneter Popup-Datensatz",
|
||||||
|
"Associated records": "Zugehörige Datensätze",
|
||||||
|
"Parent record": "Übergeordneter Datensatz",
|
||||||
|
"Current time": "Aktuelle Zeit",
|
||||||
|
"System variables": "Systemvariablen",
|
||||||
|
"Date variables": "Datumsvariablen",
|
||||||
|
"Message popup close method": "Schließmethode für Popup-Nachrichten",
|
||||||
|
"Automatic close": "Automatisch schließen",
|
||||||
|
"Manually close": "Manuell schließen",
|
||||||
|
"After successful update": "Nach erfolgreicher Aktualisierung",
|
||||||
|
"Save record": "Datensatz speichern",
|
||||||
|
"Updated successfully": "Erfolgreich aktualisiert",
|
||||||
|
"After successful save": "Nach erfolgreichem Speichern",
|
||||||
|
"After clicking the custom button, the following field values will be assigned according to the following form.": "Nach dem Klicken auf die benutzerdefinierte Schaltfläche werden die folgenden Feldwerte gemäß dem folgenden Formular zugewiesen.",
|
||||||
|
"After clicking the custom button, the following fields of the current record will be saved according to the following form.": "Nach dem Klicken auf die benutzerdefinierte Schaltfläche werden die folgenden Felder des aktuellen Datensatzes gemäß dem folgenden Formular gespeichert.",
|
||||||
|
"Button background color": "Schaltflächen-Hintergrundfarbe",
|
||||||
|
"Highlight": "Hervorheben",
|
||||||
|
"Danger red": "Gefahr-Rot",
|
||||||
|
"Custom request": "Benutzerdefinierte Anfrage",
|
||||||
|
"Request settings": "Anfrageeinstellungen",
|
||||||
|
"Request URL": "Anfrage-URL",
|
||||||
|
"Request method": "Anfragemethode",
|
||||||
|
"Request query parameters": "Anfrageparameter",
|
||||||
|
"Request headers": "Anfrageheader",
|
||||||
|
"Request body": "Anfragekörper",
|
||||||
|
"Request success": "Anfrage erfolgreich",
|
||||||
|
"Invalid JSON format": "Ungültiges JSON-Format",
|
||||||
|
"After successful request": "Nach erfolgreicher Anfrage",
|
||||||
|
"Add exportable field": "Exportierbares Feld hinzufügen",
|
||||||
|
"Audit logs": "Prüfprotokolle",
|
||||||
|
"Record ID": "Datensatz-ID",
|
||||||
|
"User": "Benutzer",
|
||||||
|
"Field": "Feld",
|
||||||
|
"Select": "Auswählen",
|
||||||
|
"Select field": "Feld auswählen",
|
||||||
|
"Field value changes": "Feldwertänderungen",
|
||||||
|
"One to one (has one)": "Eins zu Eins (hat ein)",
|
||||||
|
"One to one (belongs to)": "Eins zu Eins (gehört zu)",
|
||||||
|
"Use the same time zone (GMT) for all users": "Verwenden Sie die gleiche Zeitzone (GMT) für alle Benutzer",
|
||||||
|
"Province/city/area name": "Provinz/Stadt/Gebietsname",
|
||||||
|
"Enabled languages": "Aktivierte Sprachen",
|
||||||
|
"View all plugins": "Alle Plugins anzeigen",
|
||||||
|
"Print": "Drucken",
|
||||||
|
"Done": "Fertig",
|
||||||
|
"Sign up successfully, and automatically jump to the sign in page": "Registrierung erfolgreich, Sie werden automatisch zur Anmeldeseite weitergeleitet",
|
||||||
|
"File manager": "Dateimanager",
|
||||||
|
"ACL": "ACL",
|
||||||
|
"Collection manager": "Sammlungsmanager",
|
||||||
|
"Plugin manager": "Plugin-Manager",
|
||||||
|
"Local": "Lokal",
|
||||||
|
"Built-in": "Eingebaut",
|
||||||
|
"Marketplace": "Marktplatz",
|
||||||
|
"Add plugin": "Plugin hinzufügen",
|
||||||
|
"Plugin source": "Plugin-Quelle",
|
||||||
|
"Upgrade": "Aktualisieren",
|
||||||
|
"Plugin dependencies check failed": "Überprüfung der Plugin-Abhängigkeiten fehlgeschlagen",
|
||||||
|
"More details": "Weitere Details",
|
||||||
|
"Upload new version": "Neue Version hochladen",
|
||||||
|
"Version": "Version",
|
||||||
|
"Npm package": "NPM-Paket",
|
||||||
|
"Npm package name": "NPM-Paketname",
|
||||||
|
"Upload plugin": "Plugin hochladen",
|
||||||
|
"Official plugin": "Offizielles Plugin",
|
||||||
|
"Add type": "Typ hinzufügen",
|
||||||
|
"Changelog": "Änderungsprotokoll",
|
||||||
|
"Dependencies check": "Abhängigkeitsprüfung",
|
||||||
|
"Update plugin": "Plugin aktualisieren",
|
||||||
|
"Installing": "Installiere",
|
||||||
|
"The deletion was successful.": "Das Löschen war erfolgreich.",
|
||||||
|
"Plugin Zip File": "Plugin-ZIP-Datei",
|
||||||
|
"Compressed file url": "URL der komprimierten Datei",
|
||||||
|
"Last updated": "Zuletzt aktualisiert",
|
||||||
|
"PackageName": "Paketname",
|
||||||
|
"DisplayName": "Anzeigename",
|
||||||
|
"Readme": "Readme",
|
||||||
|
"Dependencies compatibility check": "Kompatibilitätsprüfung der Abhängigkeiten",
|
||||||
|
"Plugin dependencies check failed, you should change the dependent version to meet the version requirements.": "Die Überprüfung der Plugin-Abhängigkeiten ist fehlgeschlagen. Sie sollten die abhängige Version ändern, um die Versionsanforderungen zu erfüllen.",
|
||||||
|
"Version range": "Versionsbereich",
|
||||||
|
"Plugin's version": "Plugin-Version",
|
||||||
|
"Result": "Ergebnis",
|
||||||
|
"No CHANGELOG.md file": "Keine CHANGELOG.md-Datei",
|
||||||
|
"No README.md file": "Keine README.md-Datei",
|
||||||
|
"Homepage": "Startseite",
|
||||||
|
"Drag and drop the file here or click to upload, file size should not exceed 30M": "Ziehen Sie die Datei hierher oder klicken Sie zum Hochladen, die Dateigröße sollte 30M nicht überschreiten",
|
||||||
|
"Dependencies check failed, can't enable.": "Abhängigkeitsprüfung fehlgeschlagen, kann nicht aktiviert werden.",
|
||||||
|
"Plugin starting...": "Plugin wird gestartet...",
|
||||||
|
"Plugin stopping...": "Plugin wird gestoppt...",
|
||||||
|
"Are you sure to delete this plugin?": "Sind Sie sicher, dass Sie dieses Plugin löschen möchten?",
|
||||||
|
"Are you sure to disable this plugin?": "Sind Sie sicher, dass Sie dieses Plugin deaktivieren möchten?",
|
||||||
|
"re-download file": "Datei erneut herunterladen",
|
||||||
|
"Not enabled": "Nicht aktiviert",
|
||||||
|
"Search plugin": "Plugin suchen",
|
||||||
|
"Author": "Autor",
|
||||||
|
"Plugin loading failed. Please check the server logs.": "Plugin-Ladung fehlgeschlagen. Bitte überprüfen Sie die Serverprotokolle.",
|
||||||
|
"Coming soon...": "Demnächst verfügbar...",
|
||||||
|
"All plugin settings": "Alle Plugin-Einstellungen",
|
||||||
|
"Bookmark": "Lesezeichen",
|
||||||
|
"Manage all settings": "Alle Einstellungen verwalten",
|
||||||
|
"Create inverse field in the target collection": "Inverses Feld in der Zielsammlung erstellen",
|
||||||
|
"Inverse field name": "Name des inversen Feldes",
|
||||||
|
"Inverse field display name": "Anzeigename des inversen Feldes",
|
||||||
|
"Bulk update": "Massenaktualisierung",
|
||||||
|
"After successful bulk update": "Nach erfolgreicher Massenaktualisierung",
|
||||||
|
"Bulk edit": "Massenbearbeitung",
|
||||||
|
"Data will be updated": "Daten werden aktualisiert",
|
||||||
|
"Selected": "Ausgewählt",
|
||||||
|
"All": "Alle",
|
||||||
|
"Update selected data?": "Ausgewählte Daten aktualisieren?",
|
||||||
|
"Update all data?": "Alle Daten aktualisieren?",
|
||||||
|
"Remains the same": "Bleibt gleich",
|
||||||
|
"Changed to": "Geändert zu",
|
||||||
|
"Clear": "Löschen",
|
||||||
|
"Add attach": "Anhang hinzufügen",
|
||||||
|
"Please select the records to be updated": "Bitte wählen Sie die zu aktualisierenden Datensätze aus",
|
||||||
|
"Selector": "Selektor",
|
||||||
|
"Inner": "Innen",
|
||||||
|
"Search and select collection": "Sammlung suchen und auswählen",
|
||||||
|
"Please fill in the iframe URL": "Bitte geben Sie die iframe-URL ein",
|
||||||
|
"Fix block": "Block fixieren",
|
||||||
|
"Plugin name": "Plugin-Name",
|
||||||
|
"Plugin tab name": "Plugin-Tab-Name",
|
||||||
|
"AutoGenId": "Automatisch generiertes ID-Feld",
|
||||||
|
"CreatedBy": "Erstellt von",
|
||||||
|
"UpdatedBy": "Aktualisiert von",
|
||||||
|
"CreatedAt": "Erstellt am",
|
||||||
|
"UpdatedAt": "Aktualisiert am",
|
||||||
|
"Column width": "Spaltenbreite",
|
||||||
|
"Sortable": "Sortierbar",
|
||||||
|
"Enable link": "Link aktivieren",
|
||||||
|
"This is likely a NocoBase internals bug. Please open an issue at <1>here</1>": "Dies ist wahrscheinlich ein interner Fehler von NocoBase. Bitte öffnen Sie ein Problem <1>hier</1>",
|
||||||
|
"Render Failed": "Rendering fehlgeschlagen",
|
||||||
|
"App error": "App-Fehler",
|
||||||
|
"Feedback": "Feedback",
|
||||||
|
"Try again": "Erneut versuchen",
|
||||||
|
"Download logs": "Protokolle herunterladen",
|
||||||
|
"Data template": "Datenvorlage",
|
||||||
|
"Duplicate": "Duplizieren",
|
||||||
|
"Duplicating": "Dupliziere",
|
||||||
|
"Duplicate mode": "Duplikationsmodus",
|
||||||
|
"Quick duplicate": "Schnelles Duplizieren",
|
||||||
|
"Duplicate and continue": "Duplizieren und fortfahren",
|
||||||
|
"Please configure the duplicate fields": "Bitte konfigurieren Sie die Duplikatfelder",
|
||||||
|
"Add": "Hinzufügen",
|
||||||
|
"Add new mode": "Neuer Hinzufügungsmodus",
|
||||||
|
"Quick add": "Schnell hinzufügen",
|
||||||
|
"Modal add": "Modal hinzufügen",
|
||||||
|
"Save mode": "Speichermodus",
|
||||||
|
"First or create": "Zuerst oder erstellen",
|
||||||
|
"Update or create": "Aktualisieren oder erstellen",
|
||||||
|
"Find by the following fields": "Nach den folgenden Feldern suchen",
|
||||||
|
"Create": "Erstellen",
|
||||||
|
"Current form": "Aktuelles Formular",
|
||||||
|
"Current object": "Aktuelles Objekt",
|
||||||
|
"Linkage with form fields": "Verknüpfung mit Formularfeldern",
|
||||||
|
"Allow add new, update and delete actions": "Hinzufügen, Aktualisieren und Löschen erlauben",
|
||||||
|
"Date display format": "Datumsanzeigeformat",
|
||||||
|
"Assign data scope for the template": "Datenbereich für die Vorlage zuweisen",
|
||||||
|
"Table selected records": "Ausgewählte Tabellendatensätze",
|
||||||
|
"Tag": "Tag",
|
||||||
|
"Tag color field": "Tag-Farbfeld",
|
||||||
|
"Sync successfully": "Synchronisierung erfolgreich",
|
||||||
|
"Sync from form fields": "Von Formularfeldern synchronisieren",
|
||||||
|
"Select all": "Alle auswählen",
|
||||||
|
"Restart": "Neustart",
|
||||||
|
"Restart application": "Anwendung neu starten",
|
||||||
|
"Cascade Select": "Kaskadierte Auswahl",
|
||||||
|
"Execute": "Ausführen",
|
||||||
|
"Please use a valid SELECT or WITH AS statement": "Bitte verwenden Sie eine gültige SELECT- oder WITH AS-Anweisung",
|
||||||
|
"Please confirm the SQL statement first": "Bitte bestätigen Sie zuerst die SQL-Anweisung",
|
||||||
|
"Automatically drop objects that depend on the collection (such as views), and in turn all objects that depend on those objects": "Automatisches Löschen von Objekten, die von der Sammlung abhängen (wie Ansichten), und wiederum aller Objekte, die von diesen Objekten abhängen",
|
||||||
|
"Sign in with another account": "Mit einem anderen Konto anmelden",
|
||||||
|
"Return to the main application": "Zurück zur Hauptanwendung",
|
||||||
|
"Permission deined": "Berechtigung verweigert",
|
||||||
|
"loading": "Lädt",
|
||||||
|
"name is required": "Name ist erforderlich",
|
||||||
|
"data source": "Datenquelle",
|
||||||
|
"Data source": "Datenquelle",
|
||||||
|
"DataSource": "Datenquelle",
|
||||||
|
"The {{type}} \"{{name}}\" may have been deleted. Please remove this {{blockType}}.": "Der {{type}} \"{{name}}\" wurde möglicherweise gelöscht. Bitte entfernen Sie diesen {{blockType}}.",
|
||||||
|
"Preset fields": "Voreingestellte Felder",
|
||||||
|
"Home page": "Startseite",
|
||||||
|
"Handbook": "Handbuch",
|
||||||
|
"License": "Lizenz",
|
||||||
|
"Generic properties": "Allgemeine Eigenschaften",
|
||||||
|
"Specific properties": "Spezifische Eigenschaften",
|
||||||
|
"Used for drag and drop sorting scenarios, supporting grouping sorting": "Wird für Drag & Drop-Sortierungsszenarien verwendet und unterstützt Gruppensortierung",
|
||||||
|
"Grouped sorting": "Gruppierte Sortierung",
|
||||||
|
"When a field is selected for grouping, it will be grouped first before sorting.": "Wenn ein Feld für die Gruppierung ausgewählt wird, wird es zuerst gruppiert, bevor es sortiert wird.",
|
||||||
|
"Departments": "Abteilungen",
|
||||||
|
"Main department": "Hauptabteilung",
|
||||||
|
"Department name": "Abteilungsname",
|
||||||
|
"Superior department": "Übergeordnete Abteilung",
|
||||||
|
"Owners": "Eigentümer",
|
||||||
|
"Plugin settings": "Plugin-Einstellungen",
|
||||||
|
"Menu": "Menü",
|
||||||
|
"Drag and drop sorting field": "Feld für Drag & Drop-Sortierung",
|
||||||
|
"This variable has been deprecated and can be replaced with \"Current form\"": "Diese Variable ist veraltet und kann durch \"Aktuelles Formular\" ersetzt werden",
|
||||||
|
"The value of this variable is derived from the query string of the page URL. This variable can only be used normally when the page has a query string.": "Der Wert dieser Variable wird aus der Abfragezeichenfolge der Seiten-URL abgeleitet. Diese Variable kann nur normal verwendet werden, wenn die Seite eine Abfragezeichenfolge hat.",
|
||||||
|
"URL search params": "URL-Suchparameter",
|
||||||
|
"Expand All": "Alle erweitern",
|
||||||
|
"Search": "Suchen",
|
||||||
|
"Clear default value": "Standardwert löschen",
|
||||||
|
"Open in new window": "In neuem Fenster öffnen",
|
||||||
|
"Sorry, the page you visited does not exist.": "Entschuldigung, die von Ihnen besuchte Seite existiert nicht.",
|
||||||
|
"is none of": "ist keines von",
|
||||||
|
"is any of": "ist eines von",
|
||||||
|
"Plugin dependency version mismatch": "Versionsinkompatibilität der Plugin-Abhängigkeit",
|
||||||
|
"The current dependency version of the plugin does not match the version of the application and may not work properly. Are you sure you want to continue enabling the plugin?": "Die aktuelle Abhängigkeitsversion des Plugins stimmt nicht mit der Version der Anwendung überein und funktioniert möglicherweise nicht ordnungsgemäß. Sind Sie sicher, dass Sie das Plugin weiterhin aktivieren möchten?",
|
||||||
|
"Allow multiple selection": "Mehrfachauswahl erlauben",
|
||||||
|
"Parent object": "Übergeordnetes Objekt",
|
||||||
|
"Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data": "Überspringt das Abrufen der Gesamtanzahl der Tabellendatensätze während der Paginierung, um das Laden zu beschleunigen. Es wird empfohlen, diese Option für Datentabellen mit einer großen Datenmenge zu aktivieren",
|
||||||
|
"Enable secondary confirmation": "Sekundäre Bestätigung aktivieren",
|
||||||
|
"Notification": "Benachrichtigung",
|
||||||
|
"Ellipsis overflow content": "Auslassungszeichen für Überlaufinhalt",
|
||||||
|
"Hide column": "Spalte ausblenden",
|
||||||
|
"In configuration mode, the entire column becomes transparent. In non-configuration mode, the entire column will be hidden. Even if the entire column is hidden, its configured default values and other settings will still take effect.": "Im Konfigurationsmodus wird die gesamte Spalte transparent. Im Nicht-Konfigurationsmodus wird die gesamte Spalte ausgeblendet. Auch wenn die gesamte Spalte ausgeblendet ist, werden ihre konfigurierten Standardwerte und andere Einstellungen weiterhin wirksam.",
|
||||||
|
"Unauthenticated. Please sign in to continue.": "Nicht authentifiziert. Bitte melden Sie sich an, um fortzufahren.",
|
||||||
|
"User not found. Please sign in again to continue.": "Benutzer nicht gefunden. Bitte melden Sie sich erneut an, um fortzufahren.",
|
||||||
|
"Your session has expired. Please sign in again.": "Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.",
|
||||||
|
"User password changed, please signin again.": "Benutzerpasswort geändert, bitte melden Sie sich erneut an.",
|
||||||
|
"Desktop routes": "Desktop-Routen",
|
||||||
|
"Route permissions": "Routenberechtigungen",
|
||||||
|
"New routes are allowed to be accessed by default": "Neue Routen dürfen standardmäßig zugegriffen werden",
|
||||||
|
"Route name": "Routenname",
|
||||||
|
"Mobile routes": "Mobile Routen",
|
||||||
|
"Show in menu": "Im Menü anzeigen",
|
||||||
|
"Hide in menu": "Im Menü ausblenden",
|
||||||
|
"Path": "Pfad",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Access": "Zugriff",
|
||||||
|
"Routes": "Routen",
|
||||||
|
"Add child route": "Unterroute hinzufügen",
|
||||||
|
"Delete routes": "Routen löschen",
|
||||||
|
"Delete route": "Route löschen",
|
||||||
|
"Are you sure you want to hide these routes in menu?": "Sind Sie sicher, dass Sie diese Routen im Menü ausblenden möchten?",
|
||||||
|
"Are you sure you want to show these routes in menu?": "Sind Sie sicher, dass Sie diese Routen im Menü anzeigen möchten?",
|
||||||
|
"Are you sure you want to hide this menu?": "Sind Sie sicher, dass Sie dieses Menü ausblenden möchten?",
|
||||||
|
"After hiding, this menu will no longer appear in the menu bar. To show it again, you need to go to the route management page to configure it.": "Nach dem Ausblenden wird dieses Menü nicht mehr in der Menüleiste angezeigt. Um es wieder anzuzeigen, müssen Sie zur Routenverwaltungsseite gehen, um es zu konfigurieren.",
|
||||||
|
"If selected, the page will display Tab pages.": "Wenn ausgewählt, zeigt die Seite Tab-Seiten an.",
|
||||||
|
"If selected, the route will be displayed in the menu.": "Wenn ausgewählt, wird die Route im Menü angezeigt.",
|
||||||
|
"Are you sure you want to hide this tab?": "Sind Sie sicher, dass Sie diesen Tab ausblenden möchten?",
|
||||||
|
"After hiding, this tab will no longer appear in the tab bar. To show it again, you need to go to the route management page to set it.": "Nach dem Ausblenden wird dieser Tab nicht mehr in der Tableiste angezeigt. Um ihn wieder anzuzeigen, müssen Sie zur Routenverwaltungsseite gehen, um ihn einzustellen."
|
||||||
|
}
|
@ -127,7 +127,7 @@
|
|||||||
"Tablet device": "Tablet",
|
"Tablet device": "Tablet",
|
||||||
"Desktop device": "Desktop",
|
"Desktop device": "Desktop",
|
||||||
"Large screen device": "Schermo di grandi dimensioni",
|
"Large screen device": "Schermo di grandi dimensioni",
|
||||||
"Collapse": "Collassa",
|
"Collapse": "Comprimi",
|
||||||
"Select data source": "Seleziona origine dati",
|
"Select data source": "Seleziona origine dati",
|
||||||
"Calendar": "Calendario",
|
"Calendar": "Calendario",
|
||||||
"Delete events": "Elimina eventi",
|
"Delete events": "Elimina eventi",
|
||||||
@ -171,10 +171,10 @@
|
|||||||
"Add new": "Aggiungi nuovo",
|
"Add new": "Aggiungi nuovo",
|
||||||
"Add record": "Aggiungi record",
|
"Add record": "Aggiungi record",
|
||||||
"Add child": "Aggiungi figlio",
|
"Add child": "Aggiungi figlio",
|
||||||
"Collapse all": "Collassare tutto",
|
"Collapse all": "Comprimi tutto",
|
||||||
"Expand all": "Espandere tutto",
|
"Expand all": "Espandi tutto",
|
||||||
"Expand/Collapse": "Espandere/Collassare",
|
"Expand/Collapse": "Espandi/Comprimi",
|
||||||
"Default collapse": "Collassa di default",
|
"Default collapse": "Comprimi di default",
|
||||||
"Tree table": "Tabella ad albero",
|
"Tree table": "Tabella ad albero",
|
||||||
"Custom field display name": "Nome visualizzato campo personalizzato ",
|
"Custom field display name": "Nome visualizzato campo personalizzato ",
|
||||||
"Display fields": "Visualizza campi",
|
"Display fields": "Visualizza campi",
|
||||||
@ -344,7 +344,7 @@
|
|||||||
"Edit chart": "Modifica grafico",
|
"Edit chart": "Modifica grafico",
|
||||||
"Add text": "Aggiungi testo",
|
"Add text": "Aggiungi testo",
|
||||||
"Filterable fields": "Campi filtrabili",
|
"Filterable fields": "Campi filtrabili",
|
||||||
"Edit button": "Pulsante Modifica",
|
"Edit button": "Modifica pulsante",
|
||||||
"Hide": "Nascondi",
|
"Hide": "Nascondi",
|
||||||
"Enable actions": "Abilita operazioni",
|
"Enable actions": "Abilita operazioni",
|
||||||
"Import": "Importa",
|
"Import": "Importa",
|
||||||
@ -552,7 +552,7 @@
|
|||||||
"Fields values": "Valori campi",
|
"Fields values": "Valori campi",
|
||||||
"The field has been deleted": "Il campo è stato eliminato",
|
"The field has been deleted": "Il campo è stato eliminato",
|
||||||
"When submitting the following fields, the saved values are": "Quando si inviano i seguenti campi, i valori salvati sono",
|
"When submitting the following fields, the saved values are": "Quando si inviano i seguenti campi, i valori salvati sono",
|
||||||
"After successful submission": "Dopo una invio riuscito",
|
"After successful submission": "Dopo un invio riuscito",
|
||||||
"Then": "Poi",
|
"Then": "Poi",
|
||||||
"Stay on current page": "Resta sulla pagina corrente",
|
"Stay on current page": "Resta sulla pagina corrente",
|
||||||
"Redirect to": "Reindirizza a",
|
"Redirect to": "Reindirizza a",
|
||||||
@ -658,9 +658,9 @@
|
|||||||
"After clicking the custom button, the following field values will be assigned according to the following form.": "Dopo aver fatto clic sul pulsante personalizza, i seguenti valori verranno assegnati in base al seguente modulo.",
|
"After clicking the custom button, the following field values will be assigned according to the following form.": "Dopo aver fatto clic sul pulsante personalizza, i seguenti valori verranno assegnati in base al seguente modulo.",
|
||||||
"After clicking the custom button, the following fields of the current record will be saved according to the following form.": "Dopo aver fatto clic sul pulsante personalizza, i seguenti campi del record corrente verranno salvati in base al seguente modulo.",
|
"After clicking the custom button, the following fields of the current record will be saved according to the following form.": "Dopo aver fatto clic sul pulsante personalizza, i seguenti campi del record corrente verranno salvati in base al seguente modulo.",
|
||||||
"Button background color": "Colore sfondo del pulsante",
|
"Button background color": "Colore sfondo del pulsante",
|
||||||
"Highlight": "Evidenzia",
|
"Highlight": "Evidenziato",
|
||||||
"Danger red": "Pericolo rosso",
|
"Danger red": "Rosso pericolo",
|
||||||
"Custom request": "Personalizza richiesta",
|
"Custom request": "Richiesta personalizzata",
|
||||||
"Request settings": "Impostazioni richiesta",
|
"Request settings": "Impostazioni richiesta",
|
||||||
"Request URL": "URL richiesta",
|
"Request URL": "URL richiesta",
|
||||||
"Request method": "Metodo richiesta",
|
"Request method": "Metodo richiesta",
|
||||||
@ -753,7 +753,7 @@
|
|||||||
"Update all data?": "Aggiornare tutti i dati?",
|
"Update all data?": "Aggiornare tutti i dati?",
|
||||||
"Remains the same": "Rimane lo stesso",
|
"Remains the same": "Rimane lo stesso",
|
||||||
"Changed to": "Cambiato in",
|
"Changed to": "Cambiato in",
|
||||||
"Clear": "Pulisci",
|
"Clear": "Cancella",
|
||||||
"Add attach": "Aggiungi allegato",
|
"Add attach": "Aggiungi allegato",
|
||||||
"Please select the records to be updated": "Si prega di selezionare i record da aggiornare",
|
"Please select the records to be updated": "Si prega di selezionare i record da aggiornare",
|
||||||
"Selector": "Selettore",
|
"Selector": "Selettore",
|
||||||
@ -841,7 +841,7 @@
|
|||||||
"This variable has been deprecated and can be replaced with \"Current form\"": "Questa variabile è stata deprecata e può essere sostituita con \"Current form\"",
|
"This variable has been deprecated and can be replaced with \"Current form\"": "Questa variabile è stata deprecata e può essere sostituita con \"Current form\"",
|
||||||
"The value of this variable is derived from the query string of the page URL. This variable can only be used normally when the page has a query string.": "Il valore di questa variabile deriva dalla stringa di ricerca nell'URL della pagina. Questa variabile può essere utilizzata normalmente solo quando la pagina ha una stringa di ricerca.",
|
"The value of this variable is derived from the query string of the page URL. This variable can only be used normally when the page has a query string.": "Il valore di questa variabile deriva dalla stringa di ricerca nell'URL della pagina. Questa variabile può essere utilizzata normalmente solo quando la pagina ha una stringa di ricerca.",
|
||||||
"URL search params": "Parametri di ricerca URL",
|
"URL search params": "Parametri di ricerca URL",
|
||||||
"Expand All": "Espandere tutto",
|
"Expand All": "Espandi tutto",
|
||||||
"Search": "Ricerca",
|
"Search": "Ricerca",
|
||||||
"Clear default value": "Cancella il valore predefinito",
|
"Clear default value": "Cancella il valore predefinito",
|
||||||
"Open in new window": "Apri in una nuova finestra",
|
"Open in new window": "Apri in una nuova finestra",
|
||||||
|
@ -90,13 +90,13 @@ export const DatePicker: ComposedDatePicker = (props: any) => {
|
|||||||
|
|
||||||
// 根据最小日期和最大日期限定日期时间
|
// 根据最小日期和最大日期限定日期时间
|
||||||
const disabledDate = (current) => {
|
const disabledDate = (current) => {
|
||||||
if (!current || (!minDateTime && !maxDateTime)) {
|
if (!dayjs.isDayjs(current)) return false;
|
||||||
return false;
|
|
||||||
}
|
|
||||||
// 确保 current 是一个 dayjs 对象
|
|
||||||
const currentDate = dayjs(current);
|
const currentDate = dayjs(current);
|
||||||
//在minDateTime或maxDateTime为null时 dayjs的比较函数会默认返回false 所以不做特殊判断
|
const min = minDateTime ? dayjs(minDateTime) : null;
|
||||||
return currentDate.isBefore(minDateTime, 'minute') || currentDate.isAfter(maxDateTime, 'minute');
|
const max = maxDateTime ? dayjs(maxDateTime).endOf('day') : null; // 设为 23:59:59
|
||||||
|
|
||||||
|
return (min && currentDate.isBefore(min, 'minute')) || (max && currentDate.isAfter(max, 'minute'));
|
||||||
};
|
};
|
||||||
|
|
||||||
// 禁用时分秒
|
// 禁用时分秒
|
||||||
@ -154,6 +154,8 @@ export const DatePicker: ComposedDatePicker = (props: any) => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
console.log(disabledDate);
|
||||||
|
|
||||||
const newProps = {
|
const newProps = {
|
||||||
utc,
|
utc,
|
||||||
...props,
|
...props,
|
||||||
|
@ -199,11 +199,29 @@ export interface URLReadPrettyProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const ellipsisStyle = { textOverflow: 'ellipsis', overflow: 'hidden', whiteSpace: 'nowrap', display: 'block' };
|
const ellipsisStyle = { textOverflow: 'ellipsis', overflow: 'hidden', whiteSpace: 'nowrap', display: 'block' };
|
||||||
|
|
||||||
|
function encodeFileURL(url: string): string {
|
||||||
|
if (!url) {
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
|
||||||
|
const parts = url.split('/');
|
||||||
|
const filename = parts.pop();
|
||||||
|
parts.push(encodeURIComponent(filename));
|
||||||
|
const encodedURL = parts.join('/');
|
||||||
|
return encodedURL;
|
||||||
|
}
|
||||||
|
|
||||||
ReadPretty.URL = (props: URLReadPrettyProps) => {
|
ReadPretty.URL = (props: URLReadPrettyProps) => {
|
||||||
// eslint-disable-next-line react-hooks/rules-of-hooks
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
||||||
const prefixCls = usePrefixCls('description-url', props);
|
const prefixCls = usePrefixCls('description-url', props);
|
||||||
const content = props.value && (
|
const content = props.value && (
|
||||||
<a style={props.ellipsis ? ellipsisStyle : undefined} target="_blank" rel="noopener noreferrer" href={props.value}>
|
<a
|
||||||
|
style={props.ellipsis ? ellipsisStyle : undefined}
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
href={encodeFileURL(props.value)}
|
||||||
|
>
|
||||||
{props.value}
|
{props.value}
|
||||||
</a>
|
</a>
|
||||||
);
|
);
|
||||||
|
@ -32,6 +32,7 @@ import {
|
|||||||
toValueItem as toValueItemDefault,
|
toValueItem as toValueItemDefault,
|
||||||
useBeforeUpload,
|
useBeforeUpload,
|
||||||
useUploadProps,
|
useUploadProps,
|
||||||
|
encodeFileURL,
|
||||||
} from './shared';
|
} from './shared';
|
||||||
import { useStyles } from './style';
|
import { useStyles } from './style';
|
||||||
import type { ComposedUpload, DraggerProps, DraggerV2Props, UploadProps } from './type';
|
import type { ComposedUpload, DraggerProps, DraggerV2Props, UploadProps } from './type';
|
||||||
@ -89,26 +90,27 @@ attachmentFileTypes.add({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const iframePreviewSupportedTypes = ['application/pdf', 'audio/*', 'image/*', 'video/*'];
|
const iframePreviewSupportedTypes = ['application/pdf', 'audio/*', 'image/*', 'video/*', 'text/*'];
|
||||||
|
|
||||||
function IframePreviewer({ index, list, onSwitchIndex }) {
|
function IframePreviewer({ index, list, onSwitchIndex }) {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const file = list[index];
|
const file = list[index];
|
||||||
|
const url = encodeFileURL(file.url);
|
||||||
const onOpen = useCallback(
|
const onOpen = useCallback(
|
||||||
(e) => {
|
(e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
window.open(file.url);
|
window.open(url);
|
||||||
},
|
},
|
||||||
[file],
|
[url],
|
||||||
);
|
);
|
||||||
const onDownload = useCallback(
|
const onDownload = useCallback(
|
||||||
(e) => {
|
(e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
saveAs(file.url, `${file.title}${file.extname}`);
|
saveAs(url, `${file.title}${file.extname}`);
|
||||||
},
|
},
|
||||||
[file],
|
[file.extname, file.title, url],
|
||||||
);
|
);
|
||||||
const onClose = useCallback(() => {
|
const onClose = useCallback(() => {
|
||||||
onSwitchIndex(null);
|
onSwitchIndex(null);
|
||||||
@ -148,7 +150,7 @@ function IframePreviewer({ index, list, onSwitchIndex }) {
|
|||||||
>
|
>
|
||||||
{iframePreviewSupportedTypes.some((type) => matchMimetype(file, type)) ? (
|
{iframePreviewSupportedTypes.some((type) => matchMimetype(file, type)) ? (
|
||||||
<iframe
|
<iframe
|
||||||
src={file.url}
|
src={url}
|
||||||
style={{
|
style={{
|
||||||
width: '100%',
|
width: '100%',
|
||||||
maxHeight: '90vh',
|
maxHeight: '90vh',
|
||||||
@ -390,7 +392,7 @@ export function Uploader({ rules, ...props }: UploadProps) {
|
|||||||
} else {
|
} else {
|
||||||
field.setFeedback({});
|
field.setFeedback({});
|
||||||
}
|
}
|
||||||
}, [field, pendingList]);
|
}, [field, pendingList, t]);
|
||||||
|
|
||||||
const onUploadChange = useCallback(
|
const onUploadChange = useCallback(
|
||||||
(info) => {
|
(info) => {
|
||||||
|
@ -267,3 +267,15 @@ export function useBeforeUpload(rules) {
|
|||||||
[rules],
|
[rules],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function encodeFileURL(url: string): string {
|
||||||
|
if (!url) {
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
|
||||||
|
const parts = url.split('/');
|
||||||
|
const filename = parts.pop();
|
||||||
|
parts.push(encodeURIComponent(filename));
|
||||||
|
const encodedURL = parts.join('/');
|
||||||
|
return encodedURL;
|
||||||
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "create-nocobase-app",
|
"name": "create-nocobase-app",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "src/index.js",
|
"main": "src/index.js",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/data-source-manager",
|
"name": "@nocobase/data-source-manager",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/actions": "1.6.0",
|
"@nocobase/actions": "1.6.2",
|
||||||
"@nocobase/cache": "1.6.0",
|
"@nocobase/cache": "1.6.2",
|
||||||
"@nocobase/database": "1.6.0",
|
"@nocobase/database": "1.6.2",
|
||||||
"@nocobase/resourcer": "1.6.0",
|
"@nocobase/resourcer": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"@types/jsonwebtoken": "^8.5.8",
|
"@types/jsonwebtoken": "^8.5.8",
|
||||||
"jsonwebtoken": "^8.5.1"
|
"jsonwebtoken": "^8.5.1"
|
||||||
},
|
},
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/database",
|
"name": "@nocobase/database",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/logger": "1.6.0",
|
"@nocobase/logger": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"async-mutex": "^0.3.2",
|
"async-mutex": "^0.3.2",
|
||||||
"chalk": "^4.1.1",
|
"chalk": "^4.1.1",
|
||||||
"cron-parser": "4.4.0",
|
"cron-parser": "4.4.0",
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/devtools",
|
"name": "@nocobase/devtools",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/build": "1.6.0",
|
"@nocobase/build": "1.6.2",
|
||||||
"@nocobase/client": "1.6.0",
|
"@nocobase/client": "1.6.2",
|
||||||
"@nocobase/test": "1.6.0",
|
"@nocobase/test": "1.6.2",
|
||||||
"@types/koa": "^2.15.0",
|
"@types/koa": "^2.15.0",
|
||||||
"@types/koa-bodyparser": "^4.3.4",
|
"@types/koa-bodyparser": "^4.3.4",
|
||||||
"@types/lodash": "^4.14.177",
|
"@types/lodash": "^4.14.177",
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/evaluators",
|
"name": "@nocobase/evaluators",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@formulajs/formulajs": "4.4.9",
|
"@formulajs/formulajs": "4.4.9",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"mathjs": "^10.6.0"
|
"mathjs": "^10.6.0"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/lock-manager",
|
"name": "@nocobase/lock-manager",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"async-mutex": "^0.5.0"
|
"async-mutex": "^0.5.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/logger",
|
"name": "@nocobase/logger",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "nocobase logging library",
|
"description": "nocobase logging library",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/resourcer",
|
"name": "@nocobase/resourcer",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"deepmerge": "^4.2.2",
|
"deepmerge": "^4.2.2",
|
||||||
"koa-compose": "^4.1.0",
|
"koa-compose": "^4.1.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/sdk",
|
"name": "@nocobase/sdk",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"types": "lib/index.d.ts",
|
"types": "lib/index.d.ts",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/server",
|
"name": "@nocobase/server",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
@ -10,19 +10,19 @@
|
|||||||
"@koa/cors": "^5.0.0",
|
"@koa/cors": "^5.0.0",
|
||||||
"@koa/multer": "^3.0.2",
|
"@koa/multer": "^3.0.2",
|
||||||
"@koa/router": "^9.4.0",
|
"@koa/router": "^9.4.0",
|
||||||
"@nocobase/acl": "1.6.0",
|
"@nocobase/acl": "1.6.2",
|
||||||
"@nocobase/actions": "1.6.0",
|
"@nocobase/actions": "1.6.2",
|
||||||
"@nocobase/auth": "1.6.0",
|
"@nocobase/auth": "1.6.2",
|
||||||
"@nocobase/cache": "1.6.0",
|
"@nocobase/cache": "1.6.2",
|
||||||
"@nocobase/data-source-manager": "1.6.0",
|
"@nocobase/data-source-manager": "1.6.2",
|
||||||
"@nocobase/database": "1.6.0",
|
"@nocobase/database": "1.6.2",
|
||||||
"@nocobase/evaluators": "1.6.0",
|
"@nocobase/evaluators": "1.6.2",
|
||||||
"@nocobase/lock-manager": "1.6.0",
|
"@nocobase/lock-manager": "1.6.2",
|
||||||
"@nocobase/logger": "1.6.0",
|
"@nocobase/logger": "1.6.2",
|
||||||
"@nocobase/resourcer": "1.6.0",
|
"@nocobase/resourcer": "1.6.2",
|
||||||
"@nocobase/sdk": "1.6.0",
|
"@nocobase/sdk": "1.6.2",
|
||||||
"@nocobase/telemetry": "1.6.0",
|
"@nocobase/telemetry": "1.6.2",
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"@types/decompress": "4.2.7",
|
"@types/decompress": "4.2.7",
|
||||||
"@types/ini": "^1.3.31",
|
"@types/ini": "^1.3.31",
|
||||||
"@types/koa-send": "^4.1.3",
|
"@types/koa-send": "^4.1.3",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/telemetry",
|
"name": "@nocobase/telemetry",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"description": "nocobase telemetry library",
|
"description": "nocobase telemetry library",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
@ -11,7 +11,7 @@
|
|||||||
"directory": "packages/telemetry"
|
"directory": "packages/telemetry"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nocobase/utils": "1.6.0",
|
"@nocobase/utils": "1.6.2",
|
||||||
"@opentelemetry/api": "^1.7.0",
|
"@opentelemetry/api": "^1.7.0",
|
||||||
"@opentelemetry/instrumentation": "^0.46.0",
|
"@opentelemetry/instrumentation": "^0.46.0",
|
||||||
"@opentelemetry/resources": "^1.19.0",
|
"@opentelemetry/resources": "^1.19.0",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/test",
|
"name": "@nocobase/test",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"module": "./src/index.ts",
|
"module": "./src/index.ts",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
@ -51,7 +51,7 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@faker-js/faker": "8.1.0",
|
"@faker-js/faker": "8.1.0",
|
||||||
"@nocobase/server": "1.6.0",
|
"@nocobase/server": "1.6.2",
|
||||||
"@playwright/test": "^1.45.3",
|
"@playwright/test": "^1.45.3",
|
||||||
"@testing-library/jest-dom": "^6.4.2",
|
"@testing-library/jest-dom": "^6.4.2",
|
||||||
"@testing-library/react": "^14.0.0",
|
"@testing-library/react": "^14.0.0",
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/utils",
|
"name": "@nocobase/utils",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"types": "./lib/index.d.ts",
|
"types": "./lib/index.d.ts",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@budibase/handlebars-helpers": "^0.14.0",
|
"@budibase/handlebars-helpers": "0.14.0",
|
||||||
"@hapi/topo": "^6.0.0",
|
"@hapi/topo": "^6.0.0",
|
||||||
"@rc-component/mini-decimal": "^1.1.0",
|
"@rc-component/mini-decimal": "^1.1.0",
|
||||||
"dayjs": "^1.11.9",
|
"dayjs": "^1.11.9",
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "权限控制",
|
"displayName.zh-CN": "权限控制",
|
||||||
"description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.",
|
"description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.",
|
||||||
"description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。",
|
"description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/acl",
|
"homepage": "https://docs.nocobase.com/handbook/acl",
|
||||||
|
11
packages/plugins/@nocobase/plugin-acl/src/locale/de-DE.json
Normal file
11
packages/plugins/@nocobase/plugin-acl/src/locale/de-DE.json
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"The current user has no roles. Please try another account.": "Der aktuelle Benutzer hat keine Rollen. Bitte versuchen Sie es mit einem anderen Konto.",
|
||||||
|
"The user role does not exist. Please try signing in again": "Die Benutzerrolle existiert nicht. Bitte versuchen Sie, sich erneut anzumelden",
|
||||||
|
"New role": "Neue Rolle",
|
||||||
|
"Permissions": "Berechtigungen",
|
||||||
|
"Roles & Permissions": "Rollen und Berechtigungen",
|
||||||
|
"General": "Allgemein",
|
||||||
|
"Desktop menu": "Desktop-Menü",
|
||||||
|
"Plugin settings": "Plugin-Einstellungen",
|
||||||
|
"Data sources": "Datenquellen"
|
||||||
|
}
|
@ -4,4 +4,8 @@
|
|||||||
"New role": "Nuovo ruolo",
|
"New role": "Nuovo ruolo",
|
||||||
"Permissions": "Permessi",
|
"Permissions": "Permessi",
|
||||||
"Desktop menu": "Menu desktop"
|
"Desktop menu": "Menu desktop"
|
||||||
|
"Roles & Permissions": "Ruoli e permessi",
|
||||||
|
"General": "Generale",
|
||||||
|
"Plugin settings": "Impostazioni plugin",
|
||||||
|
"Data sources": "Origini dati"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-action-bulk-edit",
|
"name": "@nocobase/plugin-action-bulk-edit",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-bulk-edit",
|
"homepage": "https://docs.nocobase.com/handbook/action-bulk-edit",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-edit",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-edit",
|
||||||
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"Bulk edit": "Massenbearbeitung",
|
||||||
|
"Data will be updated": "Daten werden aktualisiert",
|
||||||
|
"Entire collection": "Gesamte Sammlung"
|
||||||
|
}
|
@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
"Bulk edit": "Modifica di massa",
|
"Bulk edit": "Modifica di massa",
|
||||||
"Data will be updated": "I dati saranno aggiornati"
|
"Data will be updated": "I dati saranno aggiornati"
|
||||||
|
"Entire collection":"Raccolta intera"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-action-bulk-update",
|
"name": "@nocobase/plugin-action-bulk-update",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-bulk-update",
|
"homepage": "https://docs.nocobase.com/handbook/action-bulk-update",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-update",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-bulk-update",
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"Bulk update": "Massenaktualisierung",
|
||||||
|
"After successful bulk update": "Nach erfolgreicher Massenaktualisierung",
|
||||||
|
"Please select the records to be updated": "Bitte wählen Sie die zu aktualisierenden Datensätze aus",
|
||||||
|
"Entire collection": "Gesamte Sammlung"
|
||||||
|
}
|
@ -2,4 +2,5 @@
|
|||||||
"Bulk update": "Aggiornamento di massa",
|
"Bulk update": "Aggiornamento di massa",
|
||||||
"After successful bulk update": "Dopo un aggiornamento di massa riuscito",
|
"After successful bulk update": "Dopo un aggiornamento di massa riuscito",
|
||||||
"Please select the records to be updated": "Per favore seleziona i record da aggiornare"
|
"Please select the records to be updated": "Per favore seleziona i record da aggiornare"
|
||||||
|
"Entire collection": "Raccolta intera"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-action-custom-request",
|
"name": "@nocobase/plugin-action-custom-request",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-custom-request",
|
"homepage": "https://docs.nocobase.com/handbook/action-custom-request",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-custom-request",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-custom-request",
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
"ms": "ms",
|
"ms": "ms",
|
||||||
"Input request data": "Inserisci dati richiesta",
|
"Input request data": "Inserisci dati richiesta",
|
||||||
"Only support standard JSON data": "Supporta solo dati JSON standard",
|
"Only support standard JSON data": "Supporta solo dati JSON standard",
|
||||||
"Content-Type only support \"application/json\", and no need to specify": "Content-Type supporta solo \"application/json\", e non è necessario specificarlo",
|
"\"Content-Type\" only support \"application/json\", and no need to specify": "Content-Type supporta solo \"application/json\", e non è necessario specificarlo",
|
||||||
"When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data": "Quando il metodo HTTP è Post, Put o Patch, e questa richiesta personalizzata è all'interno del modulo, il corpo della richiesta verrà automaticamente riempito con i dati del modulo",
|
"When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data": "Quando il metodo HTTP è Post, Put o Patch, e questa richiesta personalizzata è all'interno del modulo, il corpo della richiesta verrà automaticamente riempito con i dati del modulo",
|
||||||
"Please configure the request settings first": "Per favore configura prima le impostazioni della richiesta"
|
"Please configure the request settings first": "Per favore configura prima le impostazioni della richiesta"
|
||||||
}
|
}
|
||||||
|
@ -77,13 +77,12 @@ export async function send(this: CustomRequestPlugin, ctx: Context, next: Next)
|
|||||||
|
|
||||||
// root role has all permissions
|
// root role has all permissions
|
||||||
if (ctx.state.currentRole !== 'root') {
|
if (ctx.state.currentRole !== 'root') {
|
||||||
const crRepo = ctx.db.getRepository('customRequestsRoles');
|
const crRepo = ctx.db.getRepository('uiButtonSchemasRoles');
|
||||||
const hasRoles = await crRepo.find({
|
const hasRoles = await crRepo.find({
|
||||||
filter: {
|
filter: {
|
||||||
customRequestKey: filterByTk,
|
uid: filterByTk,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
if (hasRoles.length) {
|
if (hasRoles.length) {
|
||||||
if (!hasRoles.find((item) => item.roleName === ctx.state.currentRole)) {
|
if (!hasRoles.find((item) => item.roleName === ctx.state.currentRole)) {
|
||||||
return ctx.throw(403, 'custom request no permission');
|
return ctx.throw(403, 'custom request no permission');
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-action-duplicate",
|
"name": "@nocobase/plugin-action-duplicate",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-duplicate",
|
"homepage": "https://docs.nocobase.com/handbook/action-duplicate",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-duplicate",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-duplicate",
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "操作:导出记录",
|
"displayName.zh-CN": "操作:导出记录",
|
||||||
"description": "Export filtered records to excel, you can configure which fields to export.",
|
"description": "Export filtered records to excel, you can configure which fields to export.",
|
||||||
"description.zh-CN": "导出筛选后的记录到 Excel 中,可以配置导出哪些字段。",
|
"description.zh-CN": "导出筛选后的记录到 Excel 中,可以配置导出哪些字段。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-export",
|
"homepage": "https://docs.nocobase.com/handbook/action-export",
|
||||||
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"Export warning": "Sie können bis zu {{limit}} Datenzeilen auf einmal exportieren, alles darüber hinaus wird ignoriert.",
|
||||||
|
"Start export": "Export starten",
|
||||||
|
"another export action is running, please try again later.": "Ein anderer Exportvorgang läuft, bitte versuchen Sie es später erneut.",
|
||||||
|
"True": "Wahr",
|
||||||
|
"False": "Falsch"
|
||||||
|
}
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"Export warning": "Puoi esportare fino a {{limit}} colonne di dati alla volta, qualsiasi eccedenza sarà ignorata.",
|
"Export warning": "Puoi esportare fino a {{limit}} colonne di dati alla volta, qualsiasi eccedenza sarà ignorata.",
|
||||||
"Start export": "Avvia esportazione",
|
"Start export": "Avvia esportazione",
|
||||||
|
"another export action is running, please try again later.": "È in esecuzione un'altra attività di esportazione. Riprova più tardi.",
|
||||||
"True": "Vero",
|
"True": "Vero",
|
||||||
"False": "Falso"
|
"False": "Falso"
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "操作:导入记录",
|
"displayName.zh-CN": "操作:导入记录",
|
||||||
"description": "Import records using excel templates. You can configure which fields to import and templates will be generated automatically.",
|
"description": "Import records using excel templates. You can configure which fields to import and templates will be generated automatically.",
|
||||||
"description.zh-CN": "使用 Excel 模板导入数据,可以配置导入哪些字段,自动生成模板。",
|
"description.zh-CN": "使用 Excel 模板导入数据,可以配置导入哪些字段,自动生成模板。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-import",
|
"homepage": "https://docs.nocobase.com/handbook/action-import",
|
||||||
|
@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"Only one file is allowed to be uploaded": "Es darf nur eine Datei hochgeladen werden",
|
||||||
|
"File size cannot exceed 10M": "Die Dateigröße darf 10 MB nicht überschreiten",
|
||||||
|
"Please upload the file of Excel": "Bitte laden Sie die Excel-Datei hoch",
|
||||||
|
"Import Data": "Daten importieren",
|
||||||
|
"Import": "Importieren",
|
||||||
|
"Start import": "Import starten",
|
||||||
|
"Import explain": "Anleitung",
|
||||||
|
"Download template": "Vorlage herunterladen",
|
||||||
|
"Step 1: Download template": "Schritt 1: Vorlage herunterladen",
|
||||||
|
"Step 2: Upload Excel": "Schritt 2: Excel hochladen",
|
||||||
|
"Step 3: Import options": "Schritt 3: Importoptionen",
|
||||||
|
"Download tips": "- Laden Sie die Vorlage herunter und füllen Sie die Daten gemäß dem Format aus \r\n - Es wird nur das erste Arbeitsblatt importiert \r\n - Ändern Sie nicht die Kopfzeile der Vorlage, um einen Importfehler zu vermeiden",
|
||||||
|
"Import warnings": "Sie können bis zu {{limit}} Datenzeilen auf einmal importieren, alles darüber hinaus wird ignoriert.",
|
||||||
|
"Upload placeholder": "Ziehen Sie die Datei hierher oder klicken Sie zum Hochladen, die Dateigröße sollte 80 MB nicht überschreiten",
|
||||||
|
"Excel data importing": "Excel-Datenimport läuft, bitte schließen Sie das Fenster nicht",
|
||||||
|
"{{successCount}} records have been successfully imported": "{{successCount}} Datensätze wurden erfolgreich importiert",
|
||||||
|
"To download the failure data": "Um die fehlgeschlagenen Daten herunterzuladen",
|
||||||
|
"Add importable field": "Importierbares Feld hinzufügen",
|
||||||
|
"Done": "Fertig",
|
||||||
|
"Yes": "Ja",
|
||||||
|
"No": "Nein",
|
||||||
|
"Field {{fieldName}} does not exist": "Feld {{fieldName}} existiert nicht",
|
||||||
|
"can not find value": "Wert kann nicht gefunden werden",
|
||||||
|
"password is empty": "Passwort ist leer",
|
||||||
|
"Incorrect time format": "Falsches Zeitformat",
|
||||||
|
"Incorrect date format": "Falsches Datumsformat",
|
||||||
|
"Incorrect email format": "Falsches E-Mail-Format",
|
||||||
|
"Illegal percentage format": "Ungültiges Prozentformat",
|
||||||
|
"Imported template does not match, please download again.": "Importierte Vorlage stimmt nicht überein, bitte erneut herunterladen.",
|
||||||
|
"another import action is running, please try again later.": "Ein anderer Importvorgang läuft, bitte versuchen Sie es später erneut.",
|
||||||
|
"Please select": "Bitte auswählen",
|
||||||
|
"Custom column title": "Benutzerdefinierter Spaltentitel",
|
||||||
|
"Field description": "Feldbeschreibung",
|
||||||
|
"Field description placeholder": "Feldbeschreibung eingeben",
|
||||||
|
"Columns configuration is empty": "Spaltenkonfiguration ist leer",
|
||||||
|
"Field not found: {{field}}": "Feld nicht gefunden: {{field}}",
|
||||||
|
"Headers not found. Expected headers: {{headers}}": "Kopfzeilen nicht gefunden. Erwartete Kopfzeilen: {{headers}}",
|
||||||
|
"Header mismatch at column {{column}}: expected \"{{expected}}\", but got \"{{actual}}\"": "Kopfzeile stimmt nicht überein in Spalte {{column}}: erwartet \"{{expected}}\", aber erhalten \"{{actual}}\"",
|
||||||
|
"No data to import": "Keine Daten zum Importieren",
|
||||||
|
"Failed to import row {{row}}, {{message}}, row data: {{data}}": "Fehler beim Importieren von Zeile {{row}}, {{message}}, Zeilendaten: {{data}}",
|
||||||
|
"import-error": "Fehler beim Importieren von Zeile {{rowIndex}}, Zeilendaten: {{rowData}}, Ursache: {{causeMessage}}",
|
||||||
|
"Import completed": "Import abgeschlossen: {{success}} Datensätze importiert, {{updated}} Datensätze aktualisiert, {{skipped}} Datensätze übersprungen, insgesamt {{total}} Datensätze",
|
||||||
|
"Successfully imported": "Erfolgreich importiert",
|
||||||
|
"Updated records": "Aktualisierte Datensätze",
|
||||||
|
"Skipped records": "Übersprungene Datensätze",
|
||||||
|
"Total records": "Gesamtzahl der Datensätze",
|
||||||
|
"View result": "Ergebnis anzeigen",
|
||||||
|
"ImportResult": "{{success}} importiert, {{updated}} aktualisiert, {{skipped}} übersprungen, insgesamt {{total}}",
|
||||||
|
"Task result": "Aufgabenergebnis"
|
||||||
|
}
|
@ -9,7 +9,7 @@
|
|||||||
"Step 1: Download template": "Passo 1: Scarica modello",
|
"Step 1: Download template": "Passo 1: Scarica modello",
|
||||||
"Step 2: Upload Excel": "Passo 2: Carica file Excel",
|
"Step 2: Upload Excel": "Passo 2: Carica file Excel",
|
||||||
"Step 3: Import options": "Passo 3: Opzioni di importazione",
|
"Step 3: Import options": "Passo 3: Opzioni di importazione",
|
||||||
"Download tips": "- Scarica il modello e compila i dati secondo il formato \\r\\n - Importa solo il primo foglio di lavoro \\r\\n - Non cambiare l'intestazione del modello per evitare errori di importazione",
|
"Download tips": "- Scarica il modello e compila i dati secondo il formato \r\n - Importa solo il primo foglio di lavoro \r\n - Non cambiare l'intestazione del modello per evitare errori di importazione",
|
||||||
"Import warnings": "Puoi importare fino a {{limit}} righe di dati alla volta, qualsiasi eccedenza verrà ignorata.",
|
"Import warnings": "Puoi importare fino a {{limit}} righe di dati alla volta, qualsiasi eccedenza verrà ignorata.",
|
||||||
"Upload placeholder": "Trascina qui il file o clicca per caricare, la dimensione del file non deve superare 80M",
|
"Upload placeholder": "Trascina qui il file o clicca per caricare, la dimensione del file non deve superare 80M",
|
||||||
"Excel data importing": "Importazione dati Excel in corso",
|
"Excel data importing": "Importazione dati Excel in corso",
|
||||||
@ -39,4 +39,13 @@
|
|||||||
"No data to import": "Nessun dato da importare",
|
"No data to import": "Nessun dato da importare",
|
||||||
"Failed to import row {{row}}, {{message}}, row data: {{data}}": "Errore nell'importazione della riga {{row}}, {{message}}, dati della riga: {{data}}",
|
"Failed to import row {{row}}, {{message}}, row data: {{data}}": "Errore nell'importazione della riga {{row}}, {{message}}, dati della riga: {{data}}",
|
||||||
"import-error": "Errore nell'importazione della riga {{rowIndex}}, dati della riga: {{rowData}}, causa: {{causeMessage}}"
|
"import-error": "Errore nell'importazione della riga {{rowIndex}}, dati della riga: {{rowData}}, causa: {{causeMessage}}"
|
||||||
|
"Import": "Importa",
|
||||||
|
"Import completed": "Importazione completata: {{success}} record importati con successo, {{updated}} record aggiornati, {{skipped}} record saltati, totale {{total}} record",
|
||||||
|
"Successfully imported": "Importazione riuscita",
|
||||||
|
"Updated records": "Record aggiornati",
|
||||||
|
"Skipped records": "Record saltati",
|
||||||
|
"Total records": "Record totali",
|
||||||
|
"View result": "Visualizza risultato",
|
||||||
|
"ImportResult": "Importati {{success}}, aggiornati {{updated}}, saltati {{skipped}}, totale {{total}}",
|
||||||
|
"Task result": "Risultato attività"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-action-print",
|
"name": "@nocobase/plugin-action-print",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/action-print",
|
"homepage": "https://docs.nocobase.com/handbook/action-print",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-print",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/action-print",
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "AI 集成",
|
"displayName.zh-CN": "AI 集成",
|
||||||
"description": "Support integration with AI services, providing AI-related workflow nodes to enhance business processing capabilities.",
|
"description": "Support integration with AI services, providing AI-related workflow nodes to enhance business processing capabilities.",
|
||||||
"description.zh-CN": "支持接入 AI 服务,提供 AI 相关的工作流节点,增强业务处理能力。",
|
"description.zh-CN": "支持接入 AI 服务,提供 AI 相关的工作流节点,增强业务处理能力。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@nocobase/client": "1.x",
|
"@nocobase/client": "1.x",
|
||||||
|
25
packages/plugins/@nocobase/plugin-ai/src/locale/de-DE.json
Normal file
25
packages/plugins/@nocobase/plugin-ai/src/locale/de-DE.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"AI integration": "KI-Integration",
|
||||||
|
"LLM services": "LLM-Dienste",
|
||||||
|
"LLM service": "LLM-Dienst",
|
||||||
|
"Model": "Modell",
|
||||||
|
"Messages": "Nachrichten",
|
||||||
|
"Structured output": "Strukturierte Ausgabe",
|
||||||
|
"Message": "Nachricht",
|
||||||
|
"Role": "Rolle",
|
||||||
|
"UID": "UID",
|
||||||
|
"Add content": "Inhalt hinzufügen",
|
||||||
|
"Add prompt": "Prompt hinzufügen",
|
||||||
|
"Provider": "Anbieter",
|
||||||
|
"Text": "Text",
|
||||||
|
"Image": "Bild",
|
||||||
|
"Timout (ms)": "Zeitüberschreitung (ms)",
|
||||||
|
"Max retries": "Maximale Wiederholungen",
|
||||||
|
"Frequency penalty description": "Zahl zwischen -2,0 und 2,0. Positive Werte bestrafen neue Tokens basierend auf ihrer vorhandenen Häufigkeit im bisherigen Text und verringern so die Wahrscheinlichkeit, dass das Modell dieselbe Zeile wörtlich wiederholt.",
|
||||||
|
"Max completion tokens description": "Eine Obergrenze für die Anzahl der Tokens, die für eine Vervollständigung generiert werden können, einschließlich sichtbarer Ausgabe-Tokens und Reasoning-Tokens.",
|
||||||
|
"Presence penalty description": "Zahl zwischen -2,0 und 2,0. Positive Werte bestrafen neue Tokens basierend darauf, ob sie bisher im Text vorkommen, und erhöhen die Wahrscheinlichkeit, dass das Modell über neue Themen spricht.",
|
||||||
|
"Response format description": "Wichtig: Bei Verwendung des JSON-Modus müssen Sie das Modell auch selbst über eine System- oder Benutzernachricht anweisen, JSON zu erzeugen.",
|
||||||
|
"Temperature description": "Welche Sampling-Temperatur verwendet werden soll, zwischen 0 und 2. Höhere Werte wie 0,8 machen die Ausgabe zufälliger, während niedrigere Werte wie 0,2 sie fokussierter und deterministischer machen.",
|
||||||
|
"Top P description": "Eine Alternative zum Sampling mit Temperatur, genannt Nucleus-Sampling, bei dem das Modell die Ergebnisse der Tokens mit der Wahrscheinlichkeitsmasse top_p berücksichtigt. 0,1 bedeutet also, dass nur die Tokens berücksichtigt werden, die die obersten 10% der Wahrscheinlichkeitsmasse ausmachen.",
|
||||||
|
"Get models list failed, you can enter a model name manually.": "Abrufen der Modellliste fehlgeschlagen, Sie können einen Modellnamen manuell eingeben."
|
||||||
|
}
|
25
packages/plugins/@nocobase/plugin-ai/src/locale/it-IT.json
Normal file
25
packages/plugins/@nocobase/plugin-ai/src/locale/it-IT.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"AI integration": "Integrazione AI",
|
||||||
|
"LLM services": "Servizi LLM",
|
||||||
|
"LLM service": "Servizio LLM",
|
||||||
|
"Model": "Modello",
|
||||||
|
"Messages": "Messaggi",
|
||||||
|
"Structured output": "Output strutturato",
|
||||||
|
"Message": "Messaggio",
|
||||||
|
"Role": "Ruolo",
|
||||||
|
"UID": "UID",
|
||||||
|
"Add content": "Aggiungi contenuto",
|
||||||
|
"Add prompt": "Aggiungi prompt",
|
||||||
|
"Provider": "Fornitore",
|
||||||
|
"Text": "Testo",
|
||||||
|
"Image": "Immagine",
|
||||||
|
"Timout (ms)": "Timeout (ms)",
|
||||||
|
"Max retries": "Tentativi massimi",
|
||||||
|
"Frequency penalty description": "Un numero compreso tra -2,0 e 2,0. Se il valore è positivo, i nuovi token vengono penalizzati in base alla loro frequenza di occorrenza nel testo esistente, riducendo la probabilità che il modello ripeta lo stesso contenuto.",
|
||||||
|
"Max completion tokens description": "Un limite superiore per il numero di token che possono essere generati per un completamento, inclusi i token di output visibili e i token di ragionamento.",
|
||||||
|
"Presence penalty description": "Numero tra -2.0 e 2.0. I valori positivi penalizzano i nuovi token in base alla loro presenza o meno nel testo finora, aumentando la probabilità del modello di parlare di nuovi argomenti.",
|
||||||
|
"Response format description": "Importante: quando si utilizza la modalità JSON, è necessario anche istruire il modello a produrre JSON tramite un messaggio di sistema o messaggio utente.",
|
||||||
|
"Temperature description": "Quale temperatura di campionamento utilizzare, tra 0 e 2. Valori più alti come 0.8 renderanno l'output più casuale, mentre valori più bassi come 0.2 lo renderanno più focalizzato e deterministico.",
|
||||||
|
"Top P description": "Un'alternativa al campionamento con temperatura, chiamata campionamento del nucleo, in cui il modello considera i risultati dei token con massa di probabilità top_p. Quindi 0.1 significa che vengono considerati solo i token che comprendono la massa di probabilità del 10% o superiore.",
|
||||||
|
"Get models list failed, you can enter a model name manually.": "Recupero dell'elenco dei modelli fallito, è possibile inserire manualmente il nome del modello."
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-api-doc",
|
"name": "@nocobase/plugin-api-doc",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "API documentation",
|
"displayName": "API documentation",
|
||||||
"displayName.zh-CN": "API 文档",
|
"displayName.zh-CN": "API 文档",
|
||||||
"description": "An OpenAPI documentation generator for NocoBase HTTP API.",
|
"description": "An OpenAPI documentation generator for NocoBase HTTP API.",
|
||||||
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"API documentation": "API-Dokumentation",
|
||||||
|
"Documentation": "Dokumentation",
|
||||||
|
"Select a definition": "Wählen Sie eine Definition aus"
|
||||||
|
}
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"API documentation": "Docuemntazione API",
|
"API documentation": "Documentazione API",
|
||||||
"Documentation": "Documentazione",
|
"Documentation": "Documentazione",
|
||||||
"Select a definition": "Seleziona una definizione"
|
"Select a definition": "Seleziona una definizione"
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "认证:API 密钥",
|
"displayName.zh-CN": "认证:API 密钥",
|
||||||
"description": "Allows users to use API key to access application's HTTP API",
|
"description": "Allows users to use API key to access application's HTTP API",
|
||||||
"description.zh-CN": "允许用户使用 API 密钥访问应用的 HTTP API",
|
"description.zh-CN": "允许用户使用 API 密钥访问应用的 HTTP API",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/api-keys",
|
"homepage": "https://docs.nocobase.com/handbook/api-keys",
|
||||||
|
@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"API keys": "API-Schlüssel",
|
||||||
|
"API key created successfully": "API-Schlüssel erfolgreich erstellt",
|
||||||
|
"Make sure to copy your personal access key now as you will not be able to see this again.": "Stellen Sie sicher, dass Sie Ihren persönlichen Zugriffsschlüssel jetzt kopieren, da Sie ihn später nicht mehr sehen können.",
|
||||||
|
"Key name": "Schlüsselname",
|
||||||
|
"Expiration": "Ablauf",
|
||||||
|
"Delete API key": "API-Schlüssel löschen",
|
||||||
|
"Role": "Rolle",
|
||||||
|
"Keys manager": "Schlüsselverwaltung",
|
||||||
|
"Created at": "Erstellt am",
|
||||||
|
"Add API key": "API-Schlüssel hinzufügen",
|
||||||
|
"Never": "Nie",
|
||||||
|
"Custom": "Benutzerdefiniert",
|
||||||
|
"Never expires": "Läuft nie ab",
|
||||||
|
"1 Day": "1 Tag",
|
||||||
|
"7 Days": "7 Tage",
|
||||||
|
"30 Days": "30 Tage",
|
||||||
|
"90 Days": "90 Tage",
|
||||||
|
"Role not found": "Rolle nicht gefunden",
|
||||||
|
"Allow only your own roles to be selected": "Erlauben Sie nur die Auswahl Ihrer eigenen Rollen"
|
||||||
|
}
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "异步任务管理器",
|
"displayName.zh-CN": "异步任务管理器",
|
||||||
"description": "Manage and monitor asynchronous tasks such as data import/export. Support task progress tracking and notification.",
|
"description": "Manage and monitor asynchronous tasks such as data import/export. Support task progress tracking and notification.",
|
||||||
"description.zh-CN": "管理和监控数据导入导出等异步任务。支持任务进度跟踪和通知。",
|
"description.zh-CN": "管理和监控数据导入导出等异步任务。支持任务进度跟踪和通知。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@nocobase/client": "1.x",
|
"@nocobase/client": "1.x",
|
||||||
|
@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
"Export": "Exportieren",
|
||||||
|
"Import": "Importieren",
|
||||||
|
"Data": "Daten",
|
||||||
|
"Task": "Aufgabe",
|
||||||
|
"Status": "Status",
|
||||||
|
"Actions": "Aktionen",
|
||||||
|
"Created at": "Erstellt am",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Waiting": "Wartend",
|
||||||
|
"Processing": "In Bearbeitung",
|
||||||
|
"Completed": "Abgeschlossen",
|
||||||
|
"Failed": "Fehlgeschlagen",
|
||||||
|
"Cancelled": "Abgebrochen",
|
||||||
|
"Cancel": "Abbrechen",
|
||||||
|
"Cancelling": "Wird abgebrochen",
|
||||||
|
"Download": "Herunterladen",
|
||||||
|
"Error details": "Fehlerdetails",
|
||||||
|
"Confirm cancel": "Abbruch bestätigen",
|
||||||
|
"Confirm cancel description": "Sind Sie sicher, dass Sie diese Aufgabe abbrechen möchten?",
|
||||||
|
"Confirm": "Bestätigen",
|
||||||
|
"Task cancelled": "Aufgabe abgebrochen",
|
||||||
|
"Task completed": "Aufgabe abgeschlossen",
|
||||||
|
"Task failed": "Aufgabe fehlgeschlagen",
|
||||||
|
"Error Details": "Fehlerdetails",
|
||||||
|
"Close": "Schließen",
|
||||||
|
"Error code": "Fehlercode",
|
||||||
|
"Unknown error": "Unbekannter Fehler",
|
||||||
|
"OK": "OK",
|
||||||
|
"Import result": "Importergebnis",
|
||||||
|
"Import completed": "Import abgeschlossen: {{success}} Datensätze importiert, {{updated}} Datensätze aktualisiert, {{skipped}} Datensätze übersprungen, insgesamt {{total}} Datensätze",
|
||||||
|
"Import summary": "{{success}}/{{total}} Datensätze importiert",
|
||||||
|
"Import details": "{{success}} erfolgreich importiert, {{updated}} aktualisiert, {{skipped}} übersprungen, insgesamt {{total}}",
|
||||||
|
"Imported": "{{count}}/{{total}} importiert",
|
||||||
|
"Successfully imported": "Erfolgreich importiert",
|
||||||
|
"Updated records": "Aktualisierte Datensätze",
|
||||||
|
"Skipped records": "Übersprungene Datensätze",
|
||||||
|
"Total records": "Gesamtzahl der Datensätze",
|
||||||
|
"View result": "Ergebnis anzeigen",
|
||||||
|
"ImportResult": "{{success}} importiert, {{updated}} aktualisiert, {{skipped}} übersprungen, insgesamt {{total}}",
|
||||||
|
"Task result": "Aufgabenergebnis",
|
||||||
|
"Export {collection} attachments": "Export von {collection} Anhängen",
|
||||||
|
"Export {collection} data": "Export von {collection} Daten",
|
||||||
|
"Import {collection} data": "Import von {collection} Daten"
|
||||||
|
}
|
@ -1,4 +1,44 @@
|
|||||||
{
|
{
|
||||||
|
"Export": "Esporta",
|
||||||
|
"Import": "Importa",
|
||||||
|
"Data": "Dati",
|
||||||
|
"Task": "Attività",
|
||||||
|
"Status": "Stato",
|
||||||
|
"Actions": "Operazioni",
|
||||||
|
"Created at": "Creato alle",
|
||||||
|
"Type": "Tipo",
|
||||||
|
"Waiting": "In attesa",
|
||||||
|
"Processing": "In elaborazione",
|
||||||
|
"Completed": "Completato",
|
||||||
|
"Failed": "Fallito",
|
||||||
|
"Cancelled": "Annullato",
|
||||||
|
"Cancel": "Annulla",
|
||||||
|
"Cancelling": "Annullamento in corso",
|
||||||
|
"Download": "Scarica",
|
||||||
|
"Error details": "Dettagli errore",
|
||||||
|
"Confirm cancel": "Conferma annullamento",
|
||||||
|
"Confirm cancel description": "Sei sicuro di voler annullare questa attività?",
|
||||||
|
"Confirm": "Conferma",
|
||||||
|
"Task cancelled": "Attività annullata",
|
||||||
|
"Task completed": "Attività completata",
|
||||||
|
"Task failed": "Esecuzione attività fallita",
|
||||||
|
"Error Details": "Dettagli errore",
|
||||||
|
"Close": "Chiudi",
|
||||||
|
"Error code": "Codice errore",
|
||||||
|
"Unknown error": "Errore sconosciuto",
|
||||||
|
"OK": "OK",
|
||||||
|
"Import result": "Risultato importazione",
|
||||||
|
"Import completed": "Importazione completata: {{success}} record importati con successo, {{updated}} record aggiornati, {{skipped}} record saltati, totale {{total}} record",
|
||||||
|
"Import summary": "{{success}}/{{total}} record importati",
|
||||||
|
"Import details": "{{success}} record importati con successo, {{updated}} record aggiornati, {{skipped}} record saltati, totale {{total}} record",
|
||||||
|
"Imported": "{{count}}/{{total}} importati",
|
||||||
|
"Successfully imported": "Importazione riuscita",
|
||||||
|
"Updated records": "Record aggiornati",
|
||||||
|
"Skipped records": "Record saltati",
|
||||||
|
"Total records": "Record totali",
|
||||||
|
"View result": "Visualizza risultato",
|
||||||
|
"ImportResult": "Importati {{success}}, aggiornati {{updated}}, saltati {{skipped}}, totale {{total}}",
|
||||||
|
"Task result": "Risultato attività"
|
||||||
"Export {collection} attachments": "Esporta allegati {collection}",
|
"Export {collection} attachments": "Esporta allegati {collection}",
|
||||||
"Export {collection} data": "Esporta dati {collection}",
|
"Export {collection} data": "Esporta dati {collection}",
|
||||||
"Import {collection} data": "Importa dati {collection}"
|
"Import {collection} data": "Importa dati {collection}"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-audit-logs",
|
"name": "@nocobase/plugin-audit-logs",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "Audit logs (deprecated)",
|
"displayName": "Audit logs (deprecated)",
|
||||||
"displayName.zh-CN": "审计日志(废弃)",
|
"displayName.zh-CN": "审计日志(废弃)",
|
||||||
"description": "This plugin is deprecated. There will be a new audit log plugin in the future.",
|
"description": "This plugin is deprecated. There will be a new audit log plugin in the future.",
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"Details of changes": "Details der Änderungen"
|
||||||
|
}
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "认证:短信",
|
"displayName.zh-CN": "认证:短信",
|
||||||
"description": "SMS authentication.",
|
"description": "SMS authentication.",
|
||||||
"description.zh-CN": "通过短信验证码认证身份。",
|
"description.zh-CN": "通过短信验证码认证身份。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/auth-sms",
|
"homepage": "https://docs.nocobase.com/handbook/auth-sms",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth-sms",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth-sms",
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"Sign in via SMS": "Anmeldung per SMS",
|
||||||
|
"User will be registered automatically if not exists.": "Benutzer wird automatisch registriert, wenn er nicht existiert.",
|
||||||
|
"Sign up automatically when the user does not exist": "Automatische Registrierung, wenn der Benutzer nicht existiert",
|
||||||
|
"SMS": "SMS"
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-auth",
|
"name": "@nocobase/plugin-auth",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/auth",
|
"homepage": "https://docs.nocobase.com/handbook/auth",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/auth",
|
||||||
|
50
packages/plugins/@nocobase/plugin-auth/src/locale/de-DE.json
Normal file
50
packages/plugins/@nocobase/plugin-auth/src/locale/de-DE.json
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
"Auth Type": "Authentifizierungstyp",
|
||||||
|
"Authenticators": "Authentifikatoren",
|
||||||
|
"Authentication": "Authentifizierung",
|
||||||
|
"Sign in via email": "Mit E-Mail anmelden",
|
||||||
|
"Sign in via password": "Mit Passwort anmelden",
|
||||||
|
"Not allowed to sign up": "Registrierung nicht erlaubt",
|
||||||
|
"Allow to sign up": "Registrierung erlauben",
|
||||||
|
"The username or email is incorrect, please re-enter": "Der Benutzername oder die E-Mail ist falsch, bitte erneut eingeben",
|
||||||
|
"The password is incorrect, please re-enter": "Das Passwort ist falsch, bitte erneut eingeben",
|
||||||
|
"Not a valid cellphone number, please re-enter": "Keine gültige Handynummer, bitte erneut eingeben",
|
||||||
|
"The phone number has been registered, please login directly": "Die Telefonnummer wurde bereits registriert, bitte direkt anmelden",
|
||||||
|
"The phone number is not registered, please register first": "Die Telefonnummer ist nicht registriert, bitte zuerst registrieren",
|
||||||
|
"Please keep and enable at least one authenticator": "Bitte mindestens einen Authentifikator beibehalten und aktivieren",
|
||||||
|
"Allow to sign in with": "Anmeldung erlauben mit",
|
||||||
|
"Please enter a valid username": "Bitte geben Sie einen gültigen Benutzernamen ein",
|
||||||
|
"Please enter a valid email": "Bitte geben Sie eine gültige E-Mail-Adresse ein",
|
||||||
|
"Please enter your username or email": "Bitte geben Sie Ihren Benutzernamen oder Ihre E-Mail-Adresse ein",
|
||||||
|
"Please enter a password": "Bitte geben Sie ein Passwort ein",
|
||||||
|
"Username/Email": "Benutzername/E-Mail",
|
||||||
|
"Auth UID": "Auth-UID",
|
||||||
|
"The authentication allows users to sign in via username or email.": "Die Authentifizierung ermöglicht Benutzern die Anmeldung über Benutzernamen oder E-Mail.",
|
||||||
|
"No authentication methods available.": "Keine Authentifizierungsmethoden verfügbar.",
|
||||||
|
"The password is inconsistent, please re-enter": "Das Passwort ist inkonsistent, bitte erneut eingeben",
|
||||||
|
"Sign-in": "Anmelden",
|
||||||
|
"Password": "Passwort",
|
||||||
|
"The username/email or password is incorrect, please re-enter": "Der Benutzername/die E-Mail oder das Passwort ist falsch, bitte erneut eingeben",
|
||||||
|
"Show": "Anzeigen",
|
||||||
|
"Sign up settings": "Registrierungseinstellungen",
|
||||||
|
"Sign up form": "Registrierungsformular",
|
||||||
|
"At least one of the username or email fields is required": "Mindestens eines der Felder Benutzername oder E-Mail ist erforderlich",
|
||||||
|
"Password is not allowed to be changed": "Das Passwort darf nicht geändert werden",
|
||||||
|
"Token policy": "Token-Richtlinie",
|
||||||
|
"Token validity period": "Token-Gültigkeitsdauer",
|
||||||
|
"Session validity period": "Sitzungsgültigkeitsdauer",
|
||||||
|
"Expired token refresh limit": "Limit für die Aktualisierung abgelaufener Token",
|
||||||
|
"Token validity period must be less than session validity period!": "Die Token-Gültigkeitsdauer muss kürzer sein als die Sitzungsgültigkeitsdauer!",
|
||||||
|
"Seconds": "Sekunden",
|
||||||
|
"Minutes": "Minuten",
|
||||||
|
"Hours": "Stunden",
|
||||||
|
"Days": "Tage",
|
||||||
|
"Saved successfully!": "Erfolgreich gespeichert!",
|
||||||
|
"The maximum valid time for each user login. During the session validity, the Token will be automatically updated. After the timeout, the user is required to log in again.": "Die maximale Gültigkeitsdauer für jede Benutzeranmeldung. Während der Sitzungsgültigkeit wird das Token automatisch aktualisiert. Nach dem Timeout muss sich der Benutzer erneut anmelden.",
|
||||||
|
"The validity period of each issued API Token. After the Token expires, if it is within the session validity period and has not exceeded the refresh limit, the server will automatically issue a new Token to maintain the user session, otherwise the user is required to log in again. (Each Token can only be refreshed once)": "Die Gültigkeitsdauer jedes ausgestellten API-Tokens. Nachdem das Token abgelaufen ist, wird der Server automatisch ein neues Token ausstellen, um die Benutzersitzung aufrechtzuerhalten, wenn es innerhalb der Sitzungsgültigkeitsdauer liegt und das Aktualisierungslimit nicht überschritten hat, andernfalls muss sich der Benutzer erneut anmelden. (Jedes Token kann nur einmal aktualisiert werden)",
|
||||||
|
"The maximum time limit allowed for refreshing a Token after it expires. After this time limit, the token cannot be automatically renewed, and the user needs to log in again.": "Die maximal zulässige Zeitbegrenzung für die Aktualisierung eines Tokens nach dessen Ablauf. Nach dieser Zeitbegrenzung kann das Token nicht automatisch erneuert werden, und der Benutzer muss sich erneut anmelden.",
|
||||||
|
"In configuration mode, the entire column becomes transparent. In non-configuration mode, the entire column will be hidden. Even if the entire column is hidden, its configured default values and other settings will still take effect.": "Im Konfigurationsmodus wird die gesamte Spalte transparent. Im Nicht-Konfigurationsmodus wird die gesamte Spalte ausgeblendet. Auch wenn die gesamte Spalte ausgeblendet ist, bleiben ihre konfigurierten Standardwerte und andere Einstellungen weiterhin wirksam.",
|
||||||
|
"Your session has expired. Please sign in again.": "Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.",
|
||||||
|
"Unauthenticated. Please sign in to continue.": "Nicht authentifiziert. Bitte melden Sie sich an, um fortzufahren.",
|
||||||
|
"User not found. Please sign in again to continue.": "Benutzer nicht gefunden. Bitte melden Sie sich erneut an, um fortzufahren."
|
||||||
|
}
|
@ -30,4 +30,26 @@
|
|||||||
"Sign up form": "Modulo di registrazione",
|
"Sign up form": "Modulo di registrazione",
|
||||||
"At least one of the username or email fields is required": "È richiesto almeno uno dei campi nome utente o email",
|
"At least one of the username or email fields is required": "È richiesto almeno uno dei campi nome utente o email",
|
||||||
"Password is not allowed to be changed": "Non consentire cambio password"
|
"Password is not allowed to be changed": "Non consentire cambio password"
|
||||||
|
"Token policy": "Politica token",
|
||||||
|
"Token validity period": "Periodo di validità del token",
|
||||||
|
"Session validity period": "Periodo di validità della sessione",
|
||||||
|
"Expired token refresh limit": "Limite di aggiornamento token scaduto",
|
||||||
|
"Token validity period must be less than session validity period!": "Il periodo di validità del token deve essere inferiore al periodo di validità della sessione!",
|
||||||
|
"Seconds": "Secondi",
|
||||||
|
"Minutes": "Minuti",
|
||||||
|
"Hours": "Ore",
|
||||||
|
"Days": "Giorni",
|
||||||
|
"Saved successfully!": "Salvato con successo!",
|
||||||
|
"The maximum valid time for each user login. During the session validity, the Token will be automatically updated. After the timeout, the user is required to log in again.": "Il tempo massimo valido per ogni accesso utente. Durante la validità della sessione, il token verrà aggiornato automaticamente. Dopo il timeout, all'utente verrà richiesto di accedere nuovamente.",
|
||||||
|
"The validity period of each issued API Token. After the Token expires, if it is within the session validity period and has not exceeded the refresh limit, the server will automatically issue a new Token to maintain the user session, otherwise the user is required to log in again. (Each Token can only be refreshed once)": "Il periodo di validità di ciascun token API emesso. Dopo la scadenza del token, se rientra nel periodo di validità della sessione e il limite di tempo di aggiornamento non è stato superato, il server emetterà automaticamente un nuovo token per mantenere la sessione utente, altrimenti all'utente verrà richiesto di accedere nuovamente. (Ogni token può essere aggiornato una sola volta)",
|
||||||
|
"The maximum time limit allowed for refreshing a Token after it expires. After this time limit, the token cannot be automatically renewed, and the user needs to log in again.": "Il limite di tempo massimo consentito per l'aggiornamento del token dopo la scadenza. Superato questo limite di tempo, il token non può essere rinnovato automaticamente e l'utente dovrà effettuare nuovamente l'accesso.",
|
||||||
|
"Your session has expired. Please sign in again.": "La tua sessione è scaduta. Accedi di nuovo.",
|
||||||
|
"Unauthenticated. Please sign in to continue.": "Non autenticato. Accedi per continuare.",
|
||||||
|
"User not found. Please sign in again to continue.": "Utente non trovato. Accedi di nuovo per continuare."
|
||||||
|
"Select Import data": "Seleziona dati da importare",
|
||||||
|
"Select Import Plugins": "Seleziona plugin di importazione",
|
||||||
|
"Select User Collections": "Seleziona raccolte utente",
|
||||||
|
"Basic Data": "Dati di base",
|
||||||
|
"Optional Data": "Dati opzionali",
|
||||||
|
"User Data": "Dati utente"
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "应用的备份与还原(废弃)",
|
"displayName.zh-CN": "应用的备份与还原(废弃)",
|
||||||
"description": "Backup and restore applications for scenarios such as application replication, migration, and upgrades.",
|
"description": "Backup and restore applications for scenarios such as application replication, migration, and upgrades.",
|
||||||
"description.zh-CN": "备份和还原应用,可用于应用的复制、迁移、升级等场景。",
|
"description.zh-CN": "备份和还原应用,可用于应用的复制、迁移、升级等场景。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/backup-restore",
|
"homepage": "https://docs.nocobase.com/handbook/backup-restore",
|
||||||
|
@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
"Backup file": "Sicherungsdatei",
|
||||||
|
"Select Import data": "Bitte wählen Sie die zu importierenden Daten",
|
||||||
|
"Select Import Plugins": "Bitte wählen Sie die zu importierenden Plugins",
|
||||||
|
"Select User Collections": "Bitte wählen Sie Benutzersammlungen",
|
||||||
|
"Basic Data": "Basisdaten",
|
||||||
|
"Optional Data": "Optionale Daten",
|
||||||
|
"User Data": "Benutzerdaten",
|
||||||
|
"System metadata": "System-Metadaten",
|
||||||
|
"System config": "Systemkonfiguration",
|
||||||
|
"Business data": "Geschäftsdaten",
|
||||||
|
"Backup & Restore": "Sicherung & Wiederherstellung",
|
||||||
|
"Backup": "Sicherung",
|
||||||
|
"Restore": "Wiederherstellung",
|
||||||
|
"Configuration": "Konfiguration",
|
||||||
|
"Select the data to be backed up": "Wählen Sie die zu sichernden Daten aus",
|
||||||
|
"Select the data to be restored": "Wählen Sie die wiederherzustellenden Daten aus",
|
||||||
|
"Click or drag file to this area to upload": "Klicken oder ziehen Sie die Datei in diesen Bereich, um sie hochzuladen",
|
||||||
|
"Learn more": "Mehr erfahren",
|
||||||
|
"Start backup": "Sicherung starten",
|
||||||
|
"Start restore": "Wiederherstellung starten",
|
||||||
|
"Backed up successfully": "Erfolgreich gesichert",
|
||||||
|
"Plugin": "Plugin",
|
||||||
|
"file uploaded successfully": "Datei erfolgreich hochgeladen",
|
||||||
|
"file upload failed": "Datei-Upload fehlgeschlagen",
|
||||||
|
"Download": "Herunterladen",
|
||||||
|
"Restore backup from local": "Sicherung von lokal wiederherstellen",
|
||||||
|
"Backup instructions": "Sicherungsanweisungen",
|
||||||
|
"File size": "Dateigröße",
|
||||||
|
"New backup": "Neue Sicherung",
|
||||||
|
"Origin": "Ursprung",
|
||||||
|
"Backing up": "Sicherung läuft",
|
||||||
|
"Refresh": "Aktualisieren",
|
||||||
|
"Delete": "Löschen",
|
||||||
|
"Deleted successfully": "Erfolgreich gelöscht",
|
||||||
|
"required.title": "Erforderliche Daten",
|
||||||
|
"user.title": "Benutzerdaten",
|
||||||
|
"log.title": "Protokolldaten",
|
||||||
|
"custom.title": "Benutzerdefinierte Sammlungsdaten",
|
||||||
|
"skipped.title": "Übersprungene Daten",
|
||||||
|
"unknown.title": "Unbekannt",
|
||||||
|
"third-party.title": "Informationen zu Drittanbieterdiensten",
|
||||||
|
"required.description": "Erforderliche Daten",
|
||||||
|
"user.description": "Benutzerdaten",
|
||||||
|
"log.description": "Protokolldaten",
|
||||||
|
"custom.description": "Benutzerdefinierte Sammlungsdaten",
|
||||||
|
"skipped.description": "Übersprungene Daten",
|
||||||
|
"unknown.description": "Daten ohne konfigurierte Dump-Regeln",
|
||||||
|
"third-party.description": "Informationen zu Drittanbieterdiensten"
|
||||||
|
}
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "区块:iframe",
|
"displayName.zh-CN": "区块:iframe",
|
||||||
"description": "Create an iframe block on the page to embed and display external web pages or content.",
|
"description": "Create an iframe block on the page to embed and display external web pages or content.",
|
||||||
"description.zh-CN": "在页面上创建和管理iframe,用于嵌入和展示外部网页或内容。",
|
"description.zh-CN": "在页面上创建和管理iframe,用于嵌入和展示外部网页或内容。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/block-iframe",
|
"homepage": "https://docs.nocobase.com/handbook/block-iframe",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-block-workbench",
|
"name": "@nocobase/plugin-block-workbench",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "Block: Action panel",
|
"displayName": "Block: Action panel",
|
||||||
"displayName.zh-CN": "区块:操作面板",
|
"displayName.zh-CN": "区块:操作面板",
|
||||||
"description": "Centrally manages and displays various actions, allowing users to efficiently perform tasks. It supports extensibility, with current action types including pop-ups, links, scanning, and custom requests.",
|
"description": "Centrally manages and displays various actions, allowing users to efficiently perform tasks. It supports extensibility, with current action types including pop-ups, links, scanning, and custom requests.",
|
||||||
|
@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
"Workbench": "Arbeitsbereich",
|
||||||
|
"Action panel": "Aktionspanel",
|
||||||
|
"Scan QR code": "QR-Code scannen",
|
||||||
|
"Album": "Album",
|
||||||
|
"No camera device detected": "Keine Kamera erkannt",
|
||||||
|
"You have not granted permission to use the camera": "Sie haben keine Berechtigung zur Nutzung der Kamera erteilt",
|
||||||
|
"Unknown error": "Unbekannter Fehler",
|
||||||
|
"The image size is too large. Please compress it to below 1MB before uploading": "Die Bildgröße ist zu groß. Bitte komprimieren Sie es auf unter 1MB vor dem Hochladen.",
|
||||||
|
"QR code recognition failed, please scan again": "QR-Code-Erkennung fehlgeschlagen, bitte erneut scannen.",
|
||||||
|
"Layout": "Layout",
|
||||||
|
"Grid": "Raster",
|
||||||
|
"List": "Liste",
|
||||||
|
"Add popup": "Popup hinzufügen",
|
||||||
|
"Add custom request": "Benutzerdefinierte Anfrage hinzufügen",
|
||||||
|
"At least 1, up to 6": "Mindestens 1, maximal 6",
|
||||||
|
"Items per row": "Elemente pro Zeile"
|
||||||
|
}
|
@ -1,10 +1,17 @@
|
|||||||
{
|
{
|
||||||
"Workbench": "Banco di lavoro",
|
"Action panel": "Pannello azioni",
|
||||||
"Scan QR code": "Scansiona codice QR",
|
"Scan QR code": "Scansiona codice QR",
|
||||||
"Album": "Album",
|
"Album": "Album",
|
||||||
"No camera device detected": "Nessuna fotocamera rilevata",
|
"No camera device detected": "Nessuna fotocamera rilevata",
|
||||||
"You have not granted permission to use the camera": "Non hai concesso l'autorizzazione per utilizzare la fotocamera",
|
"You have not granted permission to use the camera": "Non hai concesso l'autorizzazione per utilizzare la fotocamera",
|
||||||
"Unknown error": "Errore sconosciuto",
|
"Unknown error": "Errore sconosciuto",
|
||||||
"The image size is too large. Please compress it to below 1MB before uploading": "La dimensione dell'immagine è troppo grande. Si prega di comprimerla sotto 1MB prima di caricarla.",
|
"The image size is too large. Please compress it to below 1MB before uploading": "La dimensione dell'immagine è troppo grande. Si prega di comprimerla sotto 1MB prima di caricarla.",
|
||||||
"QR code recognition failed, please scan again": "Riconoscimento del codice QR fallito, si prega di scansionare di nuovo."
|
"QR code recognition failed, please scan again": "Riconoscimento del codice QR fallito, si prega di scansionare di nuovo."
|
||||||
|
"Layout": "Layout",
|
||||||
|
"Grid": "Griglia",
|
||||||
|
"List": "Elenco",
|
||||||
|
"Add popup": "Aggiungi popup",
|
||||||
|
"Add custom request": "Aggiungi richiesta personalizzata",
|
||||||
|
"At least 1, up to 6": "Almeno 1, fino a 6",
|
||||||
|
"Items per row": "Elementi per riga"
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-calendar",
|
"name": "@nocobase/plugin-calendar",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "Calendar",
|
"displayName": "Calendar",
|
||||||
"displayName.zh-CN": "日历",
|
"displayName.zh-CN": "日历",
|
||||||
"description": "Provides callendar collection template and block for managing date data, typically for date/time related information such as events, appointments, tasks, and so on.",
|
"description": "Provides callendar collection template and block for managing date data, typically for date/time related information such as events, appointments, tasks, and so on.",
|
||||||
|
@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
"Configure calendar": "Kalender konfigurieren",
|
||||||
|
"Title field": "Titelfeld",
|
||||||
|
"Custom title": "Benutzerdefinierter Titel",
|
||||||
|
"Show lunar": "Mondkalender anzeigen",
|
||||||
|
"Start date field": "Startdatumsfeld",
|
||||||
|
"End date field": "Enddatumsfeld",
|
||||||
|
"Work week": "Arbeitswoche",
|
||||||
|
"Today": "Heute",
|
||||||
|
"Day": "Tag",
|
||||||
|
"Agenda": "Agenda",
|
||||||
|
"Date": "Datum",
|
||||||
|
"Time": "Zeit",
|
||||||
|
"Event": "Ereignis",
|
||||||
|
"None": "Keine",
|
||||||
|
"Calendar": "Kalender",
|
||||||
|
"Delete events": "Ereignisse löschen",
|
||||||
|
"This event": "Dieses Ereignis",
|
||||||
|
"This and following events": "Dieses und folgende Ereignisse",
|
||||||
|
"All events": "Alle Ereignisse",
|
||||||
|
"Delete this event?": "Dieses Ereignis löschen?",
|
||||||
|
"Delete Event": "Ereignis löschen",
|
||||||
|
"Calendar collection": "Kalendersammlung",
|
||||||
|
"Create calendar block": "Kalenderblock erstellen",
|
||||||
|
"Filter": "Filter",
|
||||||
|
"Configure actions": "Aktionen konfigurieren",
|
||||||
|
"Enable actions": "Aktionen aktivieren",
|
||||||
|
"Turn pages": "Seiten umblättern",
|
||||||
|
"Select view": "Ansicht auswählen",
|
||||||
|
"Add new": "Neu hinzufügen",
|
||||||
|
"View record": "Datensatz anzeigen",
|
||||||
|
"Details": "Details",
|
||||||
|
"Customize": "Anpassen",
|
||||||
|
"Popup": "Popup",
|
||||||
|
"Updated successfully": "Erfolgreich aktualisiert",
|
||||||
|
"Custom request": "Benutzerdefinierte Anfrage",
|
||||||
|
"Edit": "Bearbeiten",
|
||||||
|
"Delete": "Löschen",
|
||||||
|
"Print": "Drucken",
|
||||||
|
"Daily": "Täglich",
|
||||||
|
"Weekly": "Wöchentlich",
|
||||||
|
"Monthly": "Monatlich",
|
||||||
|
"Yearly": "Jährlich",
|
||||||
|
"Repeats": "Wiederholungen",
|
||||||
|
"Title": "Titel",
|
||||||
|
"Month": "Monat",
|
||||||
|
"Week": "Woche",
|
||||||
|
"{{count}} more items": "{{count}} weitere Einträge",
|
||||||
|
"Color field": "Farbfeld",
|
||||||
|
"Not selected": "Nicht ausgewählt",
|
||||||
|
"Default view": "Standardansicht",
|
||||||
|
"Event open mode": "Ereignisöffnungsmodus",
|
||||||
|
"Update record": "Datensatz aktualisieren"
|
||||||
|
}
|
@ -1,22 +1,4 @@
|
|||||||
/**
|
{
|
||||||
* This file is part of the NocoBase (R) project.
|
|
||||||
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
||||||
* Authors: NocoBase Team.
|
|
||||||
*
|
|
||||||
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
||||||
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This file is part of the NocoBase (R) project.
|
|
||||||
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
||||||
* Authors: NocoBase Team.
|
|
||||||
*
|
|
||||||
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
||||||
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
||||||
*/
|
|
||||||
|
|
||||||
export default {
|
|
||||||
"Configure calendar": "Configura calendario",
|
"Configure calendar": "Configura calendario",
|
||||||
"Title field": "Campo titolo",
|
"Title field": "Campo titolo",
|
||||||
"Custom title": "Titolo personalizzato",
|
"Custom title": "Titolo personalizzato",
|
||||||
@ -49,6 +31,7 @@ export default {
|
|||||||
"View record": "Visualizza record",
|
"View record": "Visualizza record",
|
||||||
"Details": "Dettagli",
|
"Details": "Dettagli",
|
||||||
"Customize": "Personalizza",
|
"Customize": "Personalizza",
|
||||||
|
"Update record": "Aggiorna record",
|
||||||
"Popup": "Popup",
|
"Popup": "Popup",
|
||||||
"Updated successfully": "Aggiornato con successo",
|
"Updated successfully": "Aggiornato con successo",
|
||||||
"Custom request": "Richiesta personalizzata",
|
"Custom request": "Richiesta personalizzata",
|
||||||
@ -59,7 +42,13 @@ export default {
|
|||||||
"Weekly": "Settimanale",
|
"Weekly": "Settimanale",
|
||||||
"Monthly": "Mensile",
|
"Monthly": "Mensile",
|
||||||
"Yearly": "Annuale",
|
"Yearly": "Annuale",
|
||||||
"Repeats": "Ripeti",
|
"Repeats": "Ripeti",
|
||||||
"Background color field": "Campo colore sfondo",
|
"Title": "Titolo",
|
||||||
"Not selected": "Non selezionato"
|
"Month": "Mese",
|
||||||
};
|
"Week": "Settimana",
|
||||||
|
"{{count}} more items": "{{count}} altri elementi",
|
||||||
|
"Not selected": "Non selezionato",
|
||||||
|
"Color field": "Campo colore",
|
||||||
|
"Default view": "Vista predefinita",
|
||||||
|
"Event open mode": "Modalità apertura evento"
|
||||||
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "图表(废弃)",
|
"displayName.zh-CN": "图表(废弃)",
|
||||||
"description": "The plugin has been deprecated, please use the data visualization plugin instead.",
|
"description": "The plugin has been deprecated, please use the data visualization plugin instead.",
|
||||||
"description.zh-CN": "已废弃插件,请使用数据可视化插件代替。",
|
"description.zh-CN": "已废弃插件,请使用数据可视化插件代替。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
@ -0,0 +1,74 @@
|
|||||||
|
{
|
||||||
|
"Edit": "Bearbeiten",
|
||||||
|
"Delete": "Löschen",
|
||||||
|
"Cancel": "Abbrechen",
|
||||||
|
"Submit": "Absenden",
|
||||||
|
"Actions": "Aktionen",
|
||||||
|
"Title": "Titel",
|
||||||
|
"Enable": "Aktivieren",
|
||||||
|
"SAML manager": "SAML-Manager",
|
||||||
|
"SAML Providers": "SAML-Anbieter",
|
||||||
|
"Redirect url": "Weiterleitungs-URL",
|
||||||
|
"SP entity id": "SP-Entitäts-ID",
|
||||||
|
"Add provider": "Hinzufügen",
|
||||||
|
"Edit provider": "Bearbeiten",
|
||||||
|
"Client id": "Client-ID",
|
||||||
|
"Entity id or issuer": "Entitäts-ID oder Aussteller",
|
||||||
|
"Login Url": "Login-URL",
|
||||||
|
"Public cert": "Öffentliches Zertifikat",
|
||||||
|
"Delete provider": "Löschen",
|
||||||
|
"Are you sure you want to delete it?": "Sind Sie sicher, dass Sie es löschen möchten?",
|
||||||
|
"Sign in button name, which will be displayed on the sign in page": "Name der Anmeldeschaltfläche, der auf der Anmeldeseite angezeigt wird",
|
||||||
|
"Chart": "Diagramm",
|
||||||
|
"Charts": "Diagramme",
|
||||||
|
"Queries": "Abfragen",
|
||||||
|
"Select chart query": "Diagrammabfrage auswählen",
|
||||||
|
"Select query data": "Abfragedaten auswählen",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Chart type": "Diagrammtyp",
|
||||||
|
"Chart title": "Diagrammtitel",
|
||||||
|
"Basic charts": "Grundlegende Diagramme",
|
||||||
|
"More charts": "Weitere Diagramme",
|
||||||
|
"Chart config": "Diagrammkonfiguration",
|
||||||
|
"Add query": "Abfrage hinzufügen",
|
||||||
|
"Edit query": "Abfrage bearbeiten",
|
||||||
|
"Invalid JSON format,must be an object array.": "Ungültiges JSON-Format, muss ein Array von Objekten sein.",
|
||||||
|
"Area": "Flächendiagramm",
|
||||||
|
"Bar": "Balkendiagramm",
|
||||||
|
"Column": "Säulendiagramm",
|
||||||
|
"Funnel": "Trichterdiagramm",
|
||||||
|
"Line": "Liniendiagramm",
|
||||||
|
"Pie": "Kreisdiagramm",
|
||||||
|
"Radar": "Radardiagramm",
|
||||||
|
"Scatter": "Streudiagramm",
|
||||||
|
"Edit chart block": "Diagrammblock bearbeiten",
|
||||||
|
"Chart preview": "Diagrammvorschau",
|
||||||
|
"Delete queries": "Abfragen löschen",
|
||||||
|
"Delete query": "Abfrage löschen",
|
||||||
|
"Add chart query": "Diagrammabfrage hinzufügen",
|
||||||
|
"Add SQL query": "SQL-Abfrage hinzufügen",
|
||||||
|
"Add JSON query": "JSON-Abfrage hinzufügen",
|
||||||
|
"Data preview": "Datenvorschau",
|
||||||
|
"Category axis / Dimension": "Kategorienachse / Dimension",
|
||||||
|
"Value axis / Metrics": "Werteachse / Metriken",
|
||||||
|
"JSON config": "JSON-Konfiguration",
|
||||||
|
"Json config references": "JSON-Konfigurationsreferenzen",
|
||||||
|
"Create chart block": "Diagrammblock erstellen",
|
||||||
|
"Invalid JSON format": "Ungültiges JSON-Format",
|
||||||
|
"Json config references: ": "JSON-Konfigurationsreferenzen: ",
|
||||||
|
"Sector Angle / Metric": "Sektorwinkel / Metrik",
|
||||||
|
"Sector label / Dimensional": "Sektorbeschriftung / Dimensional",
|
||||||
|
"Color legend / Dimensional": "Farblegende / Dimensional",
|
||||||
|
"Funnel Layer Width/Metrics": "Trichterebenenbreite / Metriken",
|
||||||
|
"Branch Tags/Dimensions": "Zweigbeschriftungen / Dimensionen",
|
||||||
|
"Branch Length/Metrics": "Zweiglänge / Metriken",
|
||||||
|
"Please check the chart config": "Bitte überprüfen Sie die Diagrammkonfiguration",
|
||||||
|
"1 「time」or 「Ordered Noun」 field,1 「Numerical」 field,1 「Unordered Noun」 field (optional)": "1 「Zeit」- oder 「Geordnetes Substantiv」-Feld, 1 「Numerisches」-Feld, 1 「Ungeordnetes Substantiv」-Feld (optional)",
|
||||||
|
"1 「time」 or 「ordered noun」 field, 1 「value」 field, 0~ 1 「unordered noun」": "1 「Zeit」- oder 「geordnetes Substantiv」-Feld, 1 「Wert」-Feld, 0~1 「ungeordnetes Substantiv」",
|
||||||
|
"1 「time」 or 「ordered noun」 field, 1 「value」 field, 0 to 1 「unordered noun」": "1 「Zeit」- oder 「geordnetes Substantiv」-Feld, 1 「Wert」-Feld, 0 bis 1 「ungeordnetes Substantiv」",
|
||||||
|
"1 「Unordered Noun」 field, 1 「Numeric」 field": "1 「Ungeordnetes Substantiv」-Feld, 1 「Numerisches」-Feld",
|
||||||
|
"1 「Time」 or 「Order Noun」 field, 1 「Value」 field": "1 「Zeit」- oder 「Geordnetes Substantiv」-Feld, 1 「Wert」-Feld",
|
||||||
|
"1~ 2 「Unordered Noun」 fields, 1 「Numeric」 field": "1~2 「Ungeordnete Substantiv」-Felder, 1 「Numerisches」-Feld",
|
||||||
|
"1 「Numeric」 field, 0~ 1 「Unordered Noun」 field": "1 「Numerisches」-Feld, 0~1 「Ungeordnetes Substantiv」-Feld",
|
||||||
|
"Chart (Old)": "Diagramm (Alt)"
|
||||||
|
}
|
@ -6,17 +6,56 @@
|
|||||||
"Actions": "Operazioni",
|
"Actions": "Operazioni",
|
||||||
"Title": "Titolo",
|
"Title": "Titolo",
|
||||||
"Enable": "Abilita",
|
"Enable": "Abilita",
|
||||||
"SAML manager": "Gestore SAML",
|
"Chart": "Grafico",
|
||||||
"SAML Providers": "Fornitori SAML",
|
"Charts": "Grafici",
|
||||||
"Redirect url": "URL di reindirizzamento",
|
"Queries": "Elenco query",
|
||||||
"SP entity id": "ID entità SP",
|
"Select chart query": "Seleziona dati grafico",
|
||||||
"Add provider": "Aggiungi fornitore",
|
"Select query data": "Seleziona dati query",
|
||||||
"Edit provider": "Modifica fornitore",
|
"Type": "Tipo",
|
||||||
"Client id": "ID client",
|
"Chart type": "Tipo di grafico",
|
||||||
"Entity id or issuer": "ID entità o emittente",
|
"Chart title": "Titolo grafico",
|
||||||
"Login Url": "URL di accesso",
|
"Basic charts": "Grafici di base",
|
||||||
"Public cert": "Certificato pubblico",
|
"More charts": "Altri grafici",
|
||||||
"Delete provider": "Elimina fornitore",
|
"Chart config": "Configurazione grafico",
|
||||||
"Are you sure you want to delete it?": "Sei sicuro di volerlo eliminare?",
|
"Add query": "Aggiungi query",
|
||||||
"Sign in button name, which will be displayed on the sign in page": "Nome del pulsante di accesso, che verrà visualizzato nella pagina di accesso"
|
"Edit query": "Modifica query",
|
||||||
|
"Invalid JSON format,must be an object array.": "Formato JSON non valido, deve essere un array di oggetti.",
|
||||||
|
"Area": "Area",
|
||||||
|
"Bar": "Barre orizzontali",
|
||||||
|
"Column": "Colonne",
|
||||||
|
"Funnel": "Imbuto",
|
||||||
|
"Line": "Linee",
|
||||||
|
"Pie": "Torta",
|
||||||
|
"Radar": "Radar",
|
||||||
|
"Scatter": "Dispersione",
|
||||||
|
"Edit chart block": "Modifica blocco grafico",
|
||||||
|
"Chart preview": "Anteprima grafico",
|
||||||
|
"Delete queries": "Elimina elenco query",
|
||||||
|
"Delete query": "Elimina query",
|
||||||
|
"Add chart query": "Aggiungi query grafico",
|
||||||
|
"Add SQL query": "Aggiungi query SQL",
|
||||||
|
"Add JSON query": "Aggiungi query JSON",
|
||||||
|
"Data preview": "Anteprima dati",
|
||||||
|
"Category axis / Dimension": "Assi Categoria / Dimensione",
|
||||||
|
"Value axis / Metrics": "Assi Valore / Metriche",
|
||||||
|
"JSON config": "Configurazione JSON",
|
||||||
|
"Json config references": "Riferimenti configurazione JSON",
|
||||||
|
"Create chart block": "Crea blocco grafico",
|
||||||
|
"Invalid JSON format": "Formato JSON non valido",
|
||||||
|
"Json config references: ": "Riferimenti configurazione JSON: ",
|
||||||
|
"Sector Angle / Metric": "Angolo Settore / Metrica",
|
||||||
|
"Sector label / Dimensional": "Etichetta Settore / Dimensionale",
|
||||||
|
"Color legend / Dimensional": "Legenda colori / Dimensionale",
|
||||||
|
"Funnel Layer Width/Metrics": "Larghezza livello imbuto / Metriche",
|
||||||
|
"Branch Tags/Dimensions": "Etichette rami / Dimensioni",
|
||||||
|
"Branch Length/Metrics": "Lunghezza rami / Metriche",
|
||||||
|
"Please check the chart config": "Controlla la configurazione del grafico",
|
||||||
|
"1 「time」or 「Ordered Noun」 field,1 「Numerical」 field,1 「Unordered Noun」 field (optional)": "1 campo 「time」 o 「Ordered Noun」, 1 campo 「Numerical」, 1 campo 「Unordered Noun」 (opzionale)",
|
||||||
|
"1 「time」 or 「ordered noun」 field, 1 「value」 field, 0~ 1 「unordered noun」": "1 campo 「time」 o 「ordered noun」, 1 campo 「value」, 0~1 「unordered noun」",
|
||||||
|
"1 「time」 or 「ordered noun」 field, 1 「value」 field, 0 to 1 「unordered noun」": "1 campo 「time」 o 「ordered noun」, 1 campo 「value」, da 0 a 1 「unordered noun」",
|
||||||
|
"1 「Unordered Noun」 field, 1 「Numeric」 field": "1 campo 「Unordered Noun」, 1 campo 「Numeric」",
|
||||||
|
"1 「Time」 or 「Order Noun」 field, 1 「Value」 field": "1 campo 「Time」 o 「Order Noun」, 1 campo 「Value」",
|
||||||
|
"1~ 2 「Unordered Noun」 fields, 1 「Numeric」 field": "1 ~ 2 campi 「Unordered Noun」, 1 campo 「Numeric」",
|
||||||
|
"1 「Numeric」 field, 0~ 1 「Unordered Noun」 field": "1 campo 「Numeric」, 0 ~ 1 campo 「Unordered Noun」",
|
||||||
|
"Chart (Old)": "Grafico (Vecchio)"
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "WEB 客户端",
|
"displayName.zh-CN": "WEB 客户端",
|
||||||
"description": "Provides a client interface for the NocoBase server",
|
"description": "Provides a client interface for the NocoBase server",
|
||||||
"description.zh-CN": "为 NocoBase 服务端提供客户端界面",
|
"description.zh-CN": "为 NocoBase 服务端提供客户端界面",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "数据表: SQL",
|
"displayName.zh-CN": "数据表: SQL",
|
||||||
"description": "Provides SQL collection template",
|
"description": "Provides SQL collection template",
|
||||||
"description.zh-CN": "提供 SQL 数据表模板",
|
"description.zh-CN": "提供 SQL 数据表模板",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"homepage": "https://docs-cn.nocobase.com/handbook/collection-sql",
|
"homepage": "https://docs-cn.nocobase.com/handbook/collection-sql",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/collection-sql",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/collection-sql",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-collection-tree",
|
"name": "@nocobase/plugin-collection-tree",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "Collection: Tree",
|
"displayName": "Collection: Tree",
|
||||||
"displayName.zh-CN": "数据表:树",
|
"displayName.zh-CN": "数据表:树",
|
||||||
"description": "Provides tree collection template",
|
"description": "Provides tree collection template",
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "数据源:主数据库",
|
"displayName.zh-CN": "数据源:主数据库",
|
||||||
"description": "NocoBase main database, supports relational databases such as PostgreSQL, MySQL, MariaDB and so on.",
|
"description": "NocoBase main database, supports relational databases such as PostgreSQL, MySQL, MariaDB and so on.",
|
||||||
"description.zh-CN": "NocoBase 主数据库,支持 PostgreSQL、MySQL、MariaDB 等关系型数据库。",
|
"description.zh-CN": "NocoBase 主数据库,支持 PostgreSQL、MySQL、MariaDB 等关系型数据库。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"homepage": "https://docs.nocobase.com/handbook/data-source-main",
|
"homepage": "https://docs.nocobase.com/handbook/data-source-main",
|
||||||
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/data-source-main",
|
"homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/data-source-main",
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"field-name-exists": "Feldname \"{{name}}\" existiert bereits in der Sammlung \"{{collectionName}}\"",
|
||||||
|
"field-is-depended-on-by-other": "Feld \"{{fieldName}}\" in \"{{fieldCollectionName}}\" kann nicht gelöscht werden, es wird von Feld \"{{dependedFieldName}}\" in \"{{dependedFieldCollectionName}}\" als \"{{dependedFieldAs}}\" verwendet"
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-data-source-manager",
|
"name": "@nocobase/plugin-data-source-manager",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"displayName": "Data source manager",
|
"displayName": "Data source manager",
|
||||||
"displayName.zh-CN": "数据源管理",
|
"displayName.zh-CN": "数据源管理",
|
||||||
|
@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"Data source name": "Datenquellname",
|
||||||
|
"Data source display name": "Anzeigename der Datenquelle",
|
||||||
|
"Host": "Host",
|
||||||
|
"Port": "Port",
|
||||||
|
"Database": "Datenbank",
|
||||||
|
"Data source manager": "Datenquellenverwaltung",
|
||||||
|
"Data sources": "Datenquellen",
|
||||||
|
"No external data source plugin installed": "Kein externes Datenquellen-Plugin installiert",
|
||||||
|
"View documentation": "Dokumentation anzeigen",
|
||||||
|
"Test Connection": "Verbindung testen",
|
||||||
|
"Connection successful": "Verbindung erfolgreich",
|
||||||
|
"Display name": "Anzeigename",
|
||||||
|
"Username": "Benutzername",
|
||||||
|
"Password": "Passwort",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Description": "Beschreibung",
|
||||||
|
"Storage": "Speicher",
|
||||||
|
"Collections": "Sammlungen",
|
||||||
|
"Permissions": "Berechtigungen",
|
||||||
|
"Allow adding and modifying collection": "Hinzufügen und Ändern von Sammlungen erlauben",
|
||||||
|
"Unknown field type": "Unbekannter Feldtyp",
|
||||||
|
"The following field types are not compatible and do not support output and display": "Die folgenden Feldtypen sind nicht kompatibel und unterstützen keine Ausgabe und Anzeige",
|
||||||
|
"Field database type": "Felddatenbanktyp",
|
||||||
|
"Field interface": "Feldschnittstelle",
|
||||||
|
"Status": "Status",
|
||||||
|
"Loading": "Wird geladen",
|
||||||
|
"Failed": "Fehlgeschlagen",
|
||||||
|
"Loaded": "Geladen",
|
||||||
|
"Reloading": "Wird neu geladen",
|
||||||
|
"Data source synchronization in progress": "Datenquellensynchronisierung läuft",
|
||||||
|
"Data source synchronization successful": "Datenquellensynchronisierung erfolgreich",
|
||||||
|
"Filter target key": "Zielschlüssel filtern",
|
||||||
|
"Select field": "Feld auswählen",
|
||||||
|
"OK": "OK",
|
||||||
|
"Please select a field.": "Bitte wählen Sie ein Feld aus.",
|
||||||
|
"Are you sure you want to set the \"{{title}}\" field as a record unique key? This setting cannot be changed after it's been set.": "Sind Sie sicher, dass Sie das Feld \"{{title}}\" als eindeutigen Datensatzschlüssel festlegen möchten? Diese Einstellung kann nach dem Festlegen nicht mehr geändert werden.",
|
||||||
|
"If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.": "Wenn eine Sammlung keinen Primärschlüssel hat, müssen Sie einen eindeutigen Datensatzschlüssel konfigurieren, um Zeilendatensätze innerhalb eines Blocks zu lokalisieren. Wenn Sie dies nicht konfigurieren, wird die Erstellung von Datenblöcken für die Sammlung verhindert.",
|
||||||
|
"Filter data based on the specific field, with the requirement that the field value must be unique.": "Filtern Sie Daten basierend auf dem spezifischen Feld, mit der Anforderung, dass der Feldwert eindeutig sein muss."
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-data-visualization",
|
"name": "@nocobase/plugin-data-visualization",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"displayName": "Data visualization",
|
"displayName": "Data visualization",
|
||||||
"displayName.zh-CN": "数据可视化",
|
"displayName.zh-CN": "数据可视化",
|
||||||
"description": "Provides data visualization feature, including chart block and chart filter block, support line charts, area charts, bar charts and more than a dozen kinds of charts, you can also extend more chart types.",
|
"description": "Provides data visualization feature, including chart block and chart filter block, support line charts, area charts, bar charts and more than a dozen kinds of charts, you can also extend more chart types.",
|
||||||
|
@ -0,0 +1,102 @@
|
|||||||
|
{
|
||||||
|
"Edit": "Bearbeiten",
|
||||||
|
"Delete": "Löschen",
|
||||||
|
"Cancel": "Abbrechen",
|
||||||
|
"Submit": "Absenden",
|
||||||
|
"Actions": "Aktionen",
|
||||||
|
"Title": "Titel",
|
||||||
|
"Enable": "Aktivieren",
|
||||||
|
"Chart": "Diagramm",
|
||||||
|
"ChartV2": "DiagrammV2",
|
||||||
|
"Charts": "Diagramme",
|
||||||
|
"Configure": "Konfigurieren",
|
||||||
|
"Duplicate": "Duplizieren",
|
||||||
|
"Configure chart": "Diagramm konfigurieren",
|
||||||
|
"Transform": "Transformieren",
|
||||||
|
"Chart type": "Diagrammtyp",
|
||||||
|
"JSON config": "JSON-Konfiguration",
|
||||||
|
"Query": "Abfrage",
|
||||||
|
"Data": "Daten",
|
||||||
|
"Run query": "Abfrage ausführen",
|
||||||
|
"Measures": "Messgrößen",
|
||||||
|
"Dimensions": "Dimensionen",
|
||||||
|
"Filter": "Filter",
|
||||||
|
"Sort": "Sortierung",
|
||||||
|
"Limit": "Limit",
|
||||||
|
"Offset": "Versatz",
|
||||||
|
"Enable cache": "Cache aktivieren",
|
||||||
|
"TTL (second)": "TTL (Sekunden)",
|
||||||
|
"Field": "Feld",
|
||||||
|
"Aggregation": "Aggregation",
|
||||||
|
"Alias": "Alias",
|
||||||
|
"Format": "Format",
|
||||||
|
"The first 10 records of the query result:": "Die ersten 10 Datensätze des Abfrageergebnisses:",
|
||||||
|
"Please run query to retrive data.": "Bitte führen Sie die Abfrage aus, um Daten abzurufen.",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Add field": "Feld hinzufügen",
|
||||||
|
"Add chart": "Diagramm hinzufügen",
|
||||||
|
"xField": "X-Feld",
|
||||||
|
"yField": "Y-Feld",
|
||||||
|
"seriesField": "Reihenfeld",
|
||||||
|
"angleField": "Winkelfeld",
|
||||||
|
"colorField": "Farbfeld",
|
||||||
|
"Line": "Linie",
|
||||||
|
"Area": "Fläche",
|
||||||
|
"Column": "Säule",
|
||||||
|
"Bar": "Balken",
|
||||||
|
"Pie": "Kreis",
|
||||||
|
"Dual axes": "Doppelachsen",
|
||||||
|
"Scatter": "Streuung",
|
||||||
|
"Gauge": "Messanzeige",
|
||||||
|
"Statistic": "Statistik",
|
||||||
|
"Currency": "Währung",
|
||||||
|
"Percent": "Prozent",
|
||||||
|
"Exponential": "Exponentiell",
|
||||||
|
"Abbreviation": "Abkürzung",
|
||||||
|
"Please configure and run query": "Bitte konfigurieren und führen Sie die Abfrage aus",
|
||||||
|
"Please configure chart": "Bitte konfigurieren Sie das Diagramm",
|
||||||
|
"Are you sure to cancel?": "Sind Sie sicher, dass Sie abbrechen möchten?",
|
||||||
|
"You changes are not saved. If you click OK, your changes will be lost.": "Ihre Änderungen sind nicht gespeichert. Wenn Sie OK klicken, gehen Ihre Änderungen verloren.",
|
||||||
|
"Same properties set in the form above will be overwritten by this JSON config.": "Dieselben Eigenschaften, die im obigen Formular festgelegt wurden, werden durch diese JSON-Konfiguration überschrieben.",
|
||||||
|
"Built-in": "Eingebaut",
|
||||||
|
"Config reference: ": "Konfigurationsreferenz: ",
|
||||||
|
"Table": "Tabelle",
|
||||||
|
"Sum": "Summe",
|
||||||
|
"Avg": "Durchschnitt",
|
||||||
|
"Count": "Anzahl",
|
||||||
|
"Min": "Minimum",
|
||||||
|
"Max": "Maximum",
|
||||||
|
"Please select a chart type.": "Bitte wählen Sie einen Diagrammtyp aus.",
|
||||||
|
"Collection": "Sammlung",
|
||||||
|
"isStack": "istGestapelt",
|
||||||
|
"isPercent": "istProzent",
|
||||||
|
"isGroup": "istGruppiert",
|
||||||
|
"smooth": "geglättet",
|
||||||
|
"Collapse": "Einklappen",
|
||||||
|
"Expand": "Erweitern",
|
||||||
|
"Current filter": "Aktueller Filter",
|
||||||
|
"Add custom field": "Benutzerdefiniertes Feld hinzufügen",
|
||||||
|
"To filter with custom fields, use \"Current filter\" variables in the chart configuration.": "Um mit benutzerdefinierten Feldern zu filtern, verwenden Sie die Variablen \"Aktueller Filter\" in der Diagrammkonfiguration.",
|
||||||
|
"Input": "Eingabe",
|
||||||
|
"Date range": "Datumsbereich",
|
||||||
|
"Time range": "Zeitbereich",
|
||||||
|
"Edit field properties": "Feldeigenschaften bearbeiten",
|
||||||
|
"Select a source field to use metadata of the field": "Wählen Sie ein Quellfeld aus, um Metadaten des Feldes zu verwenden",
|
||||||
|
"Original field": "Ursprüngliches Feld",
|
||||||
|
"Transformation": "Transformation",
|
||||||
|
"Add transformation": "Transformation hinzufügen",
|
||||||
|
"Container": "Container",
|
||||||
|
"Show border": "Rahmen anzeigen",
|
||||||
|
"Transformation tip": "Felder erlauben mehrere Transformationen, die nacheinander angewendet werden. Achten Sie auf Datentypenänderungen nach jeder Transformation. Drag-and-Drop-Funktionalität ermöglicht die Anpassung der Transformationsreihenfolge.",
|
||||||
|
"Type conversion": "Typumwandlung",
|
||||||
|
"Transformer": "Transformator",
|
||||||
|
"Size": "Größe",
|
||||||
|
"Width": "Breite",
|
||||||
|
"Height": "Höhe",
|
||||||
|
"Aspect ratio": "Seitenverhältnis",
|
||||||
|
"Fixed height": "Feste Höhe",
|
||||||
|
"Show background": "Hintergrund anzeigen",
|
||||||
|
"Show padding": "Abstand anzeigen",
|
||||||
|
"Distinct": "Eindeutig",
|
||||||
|
"Auto refresh": "Automatische Aktualisierung"
|
||||||
|
}
|
@ -72,10 +72,11 @@
|
|||||||
"isPercent": "èPercentuale",
|
"isPercent": "èPercentuale",
|
||||||
"isGroup": "èGruppo",
|
"isGroup": "èGruppo",
|
||||||
"smooth": "smussato",
|
"smooth": "smussato",
|
||||||
|
"Collapse": "Comprimi",
|
||||||
"Expand": "Espandi",
|
"Expand": "Espandi",
|
||||||
"Current filter": "Filtro corrente",
|
"Current filter": "Filtro corrente",
|
||||||
"Add custom field": "Aggiungi campo personalizzato",
|
"Add custom field": "Aggiungi campo personalizzato",
|
||||||
"To filter with custom fields, use \"Current filter\" variables in the chart configuration.": "Per filtrare con campi personalizzati, utilizza le variabili \"Filtro corrente\" nella configurazione del grafico.",
|
"To filter with custom fields, use \"Current filter\" variables in the chart configuration.": "Per filtrare con campi personalizzati, utilizza le variabili \"Current filter\" nella configurazione del grafico.",
|
||||||
"Input": "Input",
|
"Input": "Input",
|
||||||
"Date range": "Intervallo date",
|
"Date range": "Intervallo date",
|
||||||
"Time range": "Intervallo tempo",
|
"Time range": "Intervallo tempo",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-disable-pm-add",
|
"name": "@nocobase/plugin-disable-pm-add",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@nocobase/client": "1.x",
|
"@nocobase/client": "1.x",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@nocobase/plugin-environment-variables",
|
"name": "@nocobase/plugin-environment-variables",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"main": "dist/server/index.js",
|
"main": "dist/server/index.js",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@nocobase/client": "1.x",
|
"@nocobase/client": "1.x",
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"Environment": "Umgebung",
|
||||||
|
"Variables and secrets": "Variablen und Geheimnisse",
|
||||||
|
"Variables": "Variablen",
|
||||||
|
"Secrets": "Geheimnisse",
|
||||||
|
"Add variable": "Variable hinzufügen",
|
||||||
|
"Bulk import": "Massenimport",
|
||||||
|
"Name": "Name",
|
||||||
|
"Value": "Wert",
|
||||||
|
"Type": "Typ",
|
||||||
|
"Plain text": "Klartext",
|
||||||
|
"Encrypted": "Verschlüsselt",
|
||||||
|
"Delete variable": "Variable löschen",
|
||||||
|
"Restart now": "Jetzt neu starten",
|
||||||
|
"Variables and secrets have been updated. A restart is required for the changes to take effect.": "Variablen und Geheimnisse wurden aktualisiert. Ein Neustart ist erforderlich, damit die Änderungen wirksam werden."
|
||||||
|
}
|
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"Environment": "Ambiente",
|
||||||
|
"Variables and secrets": "Variabili e segreti",
|
||||||
|
"Variables": "Variabili",
|
||||||
|
"Secrets": "Segreti",
|
||||||
|
"Add variable": "Aggiungi variabile",
|
||||||
|
"Bulk import": "Importazione in blocco",
|
||||||
|
"Name": "Nome",
|
||||||
|
"Value": "Valore",
|
||||||
|
"Type": "Tipo",
|
||||||
|
"Plain text": "Testo semplice",
|
||||||
|
"Encrypted": "Crittografato",
|
||||||
|
"Delete variable": "Elimina variabile",
|
||||||
|
"Restart now": "Riavvia ora",
|
||||||
|
"Variables and secrets have been updated. A restart is required for the changes to take effect.": "Rilevati aggiornamenti a variabili e segreti. È necessario un riavvio per applicare le modifiche."
|
||||||
|
}
|
@ -4,7 +4,7 @@
|
|||||||
"displayName.zh-CN": "错误处理器",
|
"displayName.zh-CN": "错误处理器",
|
||||||
"description": "Handling application errors and exceptions.",
|
"description": "Handling application errors and exceptions.",
|
||||||
"description.zh-CN": "处理应用程序中的错误和异常。",
|
"description.zh-CN": "处理应用程序中的错误和异常。",
|
||||||
"version": "1.6.0",
|
"version": "1.6.2",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"main": "./dist/server/index.js",
|
"main": "./dist/server/index.js",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"unique violation": "{{field}} existiert bereits",
|
||||||
|
"notNull violation": "{{field}} darf nicht null sein",
|
||||||
|
"Validation error": "{{field}} Validierungsfehler",
|
||||||
|
"notNull Violation": "{{field}} darf nicht null sein"
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user