@geekron/strapi 0.2.14 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/index.js +10 -2
- package/dist/admin/index.mjs +29 -21
- package/dist/admin/src/fields/DataNested/hooks/useTreeItems.d.ts.map +1 -1
- package/dist/i18n/translations/en/reset/admin.json +10 -0
- package/dist/i18n/translations/en/reset/auth.json +6 -0
- package/dist/i18n/translations/en/reset/content-manager.json +4 -0
- package/dist/i18n/translations/zh-Hans/components.json +5 -0
- package/dist/i18n/translations/zh-Hans/console.json +223 -0
- package/dist/i18n/translations/zh-Hans/content-types.json +30 -0
- package/dist/i18n/translations/zh-Hans/plugin.json +8 -3
- package/dist/i18n/translations/zh-Hans/prefix/content-manager.json +321 -0
- package/dist/i18n/translations/zh-Hans/prefix/content-releases.json +106 -0
- package/dist/i18n/translations/zh-Hans/prefix/content-type-builder.json +68 -0
- package/dist/i18n/translations/zh-Hans/prefix/email.json +10 -0
- package/dist/i18n/translations/zh-Hans/prefix/review-workflows.json +17 -0
- package/dist/i18n/translations/zh-Hans/reset/admin.json +213 -0
- package/dist/i18n/translations/zh-Hans/reset/auth.json +6 -0
- package/dist/i18n/translations/zh-Hans/reset/content-manager.json +4 -0
- package/dist/i18n/translations/zh-Hans/reset/content-type-builder.json +228 -0
- package/dist/i18n/translations/zh-Hans/reset/i18n.json +4 -0
- package/i18n/translations/en/reset/admin.json +10 -0
- package/i18n/translations/en/reset/auth.json +6 -0
- package/i18n/translations/en/reset/content-manager.json +4 -0
- package/i18n/translations/zh-Hans/components.json +5 -0
- package/i18n/translations/zh-Hans/console.json +223 -0
- package/i18n/translations/zh-Hans/content-types.json +30 -0
- package/i18n/translations/zh-Hans/plugin.json +8 -3
- package/i18n/translations/zh-Hans/prefix/content-manager.json +321 -0
- package/i18n/translations/zh-Hans/prefix/content-releases.json +106 -0
- package/i18n/translations/zh-Hans/prefix/content-type-builder.json +68 -0
- package/i18n/translations/zh-Hans/prefix/email.json +10 -0
- package/i18n/translations/zh-Hans/prefix/review-workflows.json +17 -0
- package/i18n/translations/zh-Hans/reset/admin.json +213 -0
- package/i18n/translations/zh-Hans/reset/auth.json +6 -0
- package/i18n/translations/zh-Hans/reset/content-manager.json +4 -0
- package/i18n/translations/zh-Hans/reset/content-type-builder.json +228 -0
- package/i18n/translations/zh-Hans/reset/i18n.json +4 -0
- package/package.json +1 -1
package/dist/admin/index.js
CHANGED
|
@@ -47126,6 +47126,14 @@ var adjustTranslate = ({ transform }) => {
|
|
|
47126
47126
|
var import_react7 = require("react");
|
|
47127
47127
|
function useTreeItems(defaultItems, maxDepth) {
|
|
47128
47128
|
const [items, setItems] = import_react7.useState(() => defaultItems);
|
|
47129
|
+
const prevDefaultItemsRef = import_react7.useRef(JSON.stringify(defaultItems));
|
|
47130
|
+
import_react7.useEffect(() => {
|
|
47131
|
+
const currentDefaultItemsStr = JSON.stringify(defaultItems);
|
|
47132
|
+
if (currentDefaultItemsStr !== prevDefaultItemsRef.current) {
|
|
47133
|
+
prevDefaultItemsRef.current = currentDefaultItemsStr;
|
|
47134
|
+
setItems(defaultItems);
|
|
47135
|
+
}
|
|
47136
|
+
}, [defaultItems]);
|
|
47129
47137
|
const [modalState, setModalState] = import_react7.useState({
|
|
47130
47138
|
isOpen: false,
|
|
47131
47139
|
mode: null,
|
|
@@ -50103,13 +50111,13 @@ var register = (app) => {
|
|
|
50103
50111
|
name: "Website"
|
|
50104
50112
|
});
|
|
50105
50113
|
app.addMenuLink({
|
|
50106
|
-
to:
|
|
50114
|
+
to: "website",
|
|
50107
50115
|
icon: import_icons15.ChartPie,
|
|
50108
50116
|
intlLabel: {
|
|
50109
50117
|
id: `${pluginId}.plugin.name`,
|
|
50110
50118
|
defaultMessage: "Website"
|
|
50111
50119
|
},
|
|
50112
|
-
Component:
|
|
50120
|
+
Component: () => Promise.resolve().then(() => (init_App(), exports_App)),
|
|
50113
50121
|
permissions: [],
|
|
50114
50122
|
position: 3
|
|
50115
50123
|
});
|
package/dist/admin/index.mjs
CHANGED
|
@@ -19317,7 +19317,7 @@ var init_ApiErrorAlert = __esm(() => {
|
|
|
19317
19317
|
// admin/src/components/DashboardStats.tsx
|
|
19318
19318
|
import { Box as Box6, Grid as Grid2, Typography as Typography8 } from "@strapi/design-system";
|
|
19319
19319
|
import { useFetchClient as useFetchClient3, useNotification as useNotification3 } from "@strapi/strapi/admin";
|
|
19320
|
-
import { useEffect as
|
|
19320
|
+
import { useEffect as useEffect8, useState as useState12 } from "react";
|
|
19321
19321
|
import { jsxDEV as jsxDEV28 } from "react/jsx-dev-runtime";
|
|
19322
19322
|
var DashboardStats = ({
|
|
19323
19323
|
showLoading = true,
|
|
@@ -19335,7 +19335,7 @@ var DashboardStats = ({
|
|
|
19335
19335
|
totalInquiry: 0,
|
|
19336
19336
|
unreadInquiry: 0
|
|
19337
19337
|
});
|
|
19338
|
-
|
|
19338
|
+
useEffect8(() => {
|
|
19339
19339
|
if (externalData) {
|
|
19340
19340
|
setStats(externalData);
|
|
19341
19341
|
setIsLoading(false);
|
|
@@ -19364,7 +19364,7 @@ var DashboardStats = ({
|
|
|
19364
19364
|
};
|
|
19365
19365
|
fetchStats();
|
|
19366
19366
|
}, [externalData, fetchClient, toggleNotification, onError, onLoaded]);
|
|
19367
|
-
|
|
19367
|
+
useEffect8(() => {
|
|
19368
19368
|
if (externalData) {
|
|
19369
19369
|
setStats(externalData);
|
|
19370
19370
|
}
|
|
@@ -19563,7 +19563,7 @@ import {
|
|
|
19563
19563
|
useFetchClient as useFetchClient5,
|
|
19564
19564
|
useNotification as useNotification5
|
|
19565
19565
|
} from "@strapi/strapi/admin";
|
|
19566
|
-
import { useCallback as useCallback6, useEffect as
|
|
19566
|
+
import { useCallback as useCallback6, useEffect as useEffect9, useState as useState13 } from "react";
|
|
19567
19567
|
import { useNavigate } from "react-router-dom";
|
|
19568
19568
|
import { jsxDEV as jsxDEV31 } from "react/jsx-dev-runtime";
|
|
19569
19569
|
var Inquiry = () => {
|
|
@@ -19609,10 +19609,10 @@ var Inquiry = () => {
|
|
|
19609
19609
|
setIsLoading(false);
|
|
19610
19610
|
}
|
|
19611
19611
|
}, [fetchClient.get, toggleNotification]);
|
|
19612
|
-
|
|
19612
|
+
useEffect9(() => {
|
|
19613
19613
|
fetchInquiries(pagination.page, pagination.pageSize);
|
|
19614
19614
|
}, [fetchInquiries, pagination.page, pagination.pageSize]);
|
|
19615
|
-
|
|
19615
|
+
useEffect9(() => {
|
|
19616
19616
|
const handleVisibilityChange = () => {
|
|
19617
19617
|
if (document.visibilityState === "visible") {
|
|
19618
19618
|
fetchInquiries(pagination.page, pagination.pageSize);
|
|
@@ -19790,7 +19790,7 @@ import {
|
|
|
19790
19790
|
useFetchClient as useFetchClient6,
|
|
19791
19791
|
useNotification as useNotification6
|
|
19792
19792
|
} from "@strapi/strapi/admin";
|
|
19793
|
-
import { useEffect as
|
|
19793
|
+
import { useEffect as useEffect10, useState as useState14 } from "react";
|
|
19794
19794
|
import { useNavigate as useNavigate2, useParams } from "react-router-dom";
|
|
19795
19795
|
import styled14 from "styled-components";
|
|
19796
19796
|
import { jsxDEV as jsxDEV32, Fragment as Fragment4 } from "react/jsx-dev-runtime";
|
|
@@ -19802,7 +19802,7 @@ var DetailTable, InquiryDetail = () => {
|
|
|
19802
19802
|
const [isLoading, setIsLoading] = useState14(true);
|
|
19803
19803
|
const [isMarking, setIsMarking] = useState14(false);
|
|
19804
19804
|
const [data, setData] = useState14(null);
|
|
19805
|
-
|
|
19805
|
+
useEffect10(() => {
|
|
19806
19806
|
const fetchDetail = async () => {
|
|
19807
19807
|
if (!id) {
|
|
19808
19808
|
toggleNotification({
|
|
@@ -20141,7 +20141,7 @@ import {
|
|
|
20141
20141
|
useFetchClient as useFetchClient7,
|
|
20142
20142
|
useNotification as useNotification7
|
|
20143
20143
|
} from "@strapi/strapi/admin";
|
|
20144
|
-
import { useCallback as useCallback7, useEffect as
|
|
20144
|
+
import { useCallback as useCallback7, useEffect as useEffect11, useState as useState15 } from "react";
|
|
20145
20145
|
import { jsxDEV as jsxDEV33, Fragment as Fragment5 } from "react/jsx-dev-runtime";
|
|
20146
20146
|
var Visitor = () => {
|
|
20147
20147
|
const fetchClient = useFetchClient7();
|
|
@@ -20202,7 +20202,7 @@ var Visitor = () => {
|
|
|
20202
20202
|
setIsLoading(false);
|
|
20203
20203
|
}
|
|
20204
20204
|
}, [fetchClient.get, toggleNotification]);
|
|
20205
|
-
|
|
20205
|
+
useEffect11(() => {
|
|
20206
20206
|
fetchVisitorData(activeTab, 1, pagination.pageSize);
|
|
20207
20207
|
}, [activeTab, pagination.pageSize, fetchVisitorData]);
|
|
20208
20208
|
const handleTabChange = (tabKey) => {
|
|
@@ -45584,7 +45584,7 @@ import { useField as useField2 } from "@strapi/strapi/admin";
|
|
|
45584
45584
|
// admin/src/fields/DataNested/SortableTree.tsx
|
|
45585
45585
|
var import_core2 = __toESM(require_dist3(), 1);
|
|
45586
45586
|
var import_sortable5 = __toESM(require_dist4(), 1);
|
|
45587
|
-
import { useEffect as
|
|
45587
|
+
import { useEffect as useEffect3, useMemo as useMemo3, useRef as useRef3, useState as useState7 } from "react";
|
|
45588
45588
|
import { createPortal } from "react-dom";
|
|
45589
45589
|
|
|
45590
45590
|
// admin/src/fields/DataNested/components/Action.tsx
|
|
@@ -47167,9 +47167,17 @@ var adjustTranslate = ({ transform }) => {
|
|
|
47167
47167
|
};
|
|
47168
47168
|
};
|
|
47169
47169
|
// admin/src/fields/DataNested/hooks/useTreeItems.ts
|
|
47170
|
-
import { useState as useState6 } from "react";
|
|
47170
|
+
import { useEffect as useEffect2, useRef as useRef2, useState as useState6 } from "react";
|
|
47171
47171
|
function useTreeItems(defaultItems, maxDepth) {
|
|
47172
47172
|
const [items, setItems] = useState6(() => defaultItems);
|
|
47173
|
+
const prevDefaultItemsRef = useRef2(JSON.stringify(defaultItems));
|
|
47174
|
+
useEffect2(() => {
|
|
47175
|
+
const currentDefaultItemsStr = JSON.stringify(defaultItems);
|
|
47176
|
+
if (currentDefaultItemsStr !== prevDefaultItemsRef.current) {
|
|
47177
|
+
prevDefaultItemsRef.current = currentDefaultItemsStr;
|
|
47178
|
+
setItems(defaultItems);
|
|
47179
|
+
}
|
|
47180
|
+
}, [defaultItems]);
|
|
47173
47181
|
const [modalState, setModalState] = useState6({
|
|
47174
47182
|
isOpen: false,
|
|
47175
47183
|
mode: null,
|
|
@@ -47511,7 +47519,7 @@ function SortableTree({
|
|
|
47511
47519
|
handleDragCancel
|
|
47512
47520
|
} = useDragState(flattenedItems, setActiveId);
|
|
47513
47521
|
const projected = activeId && overId ? getProjection(flattenedItems, activeId, overId, offsetLeft, indentationWidth, maxDepth) : null;
|
|
47514
|
-
const sensorContext =
|
|
47522
|
+
const sensorContext = useRef3({
|
|
47515
47523
|
items: flattenedItems,
|
|
47516
47524
|
offset: offsetLeft
|
|
47517
47525
|
});
|
|
@@ -47521,14 +47529,14 @@ function SortableTree({
|
|
|
47521
47529
|
}));
|
|
47522
47530
|
const sortedIds = useMemo3(() => flattenedItems.map(({ id }) => id), [flattenedItems]);
|
|
47523
47531
|
const activeItem = activeId ? flattenedItems.find(({ id }) => id === activeId) : null;
|
|
47524
|
-
|
|
47532
|
+
useEffect3(() => {
|
|
47525
47533
|
sensorContext.current = {
|
|
47526
47534
|
items: flattenedItems,
|
|
47527
47535
|
offset: offsetLeft
|
|
47528
47536
|
};
|
|
47529
47537
|
}, [flattenedItems, offsetLeft]);
|
|
47530
|
-
const isInitialMount =
|
|
47531
|
-
|
|
47538
|
+
const isInitialMount = useRef3(true);
|
|
47539
|
+
useEffect3(() => {
|
|
47532
47540
|
if (isInitialMount.current) {
|
|
47533
47541
|
isInitialMount.current = false;
|
|
47534
47542
|
return;
|
|
@@ -47774,7 +47782,7 @@ var registerDataSelect = (app) => {
|
|
|
47774
47782
|
};
|
|
47775
47783
|
|
|
47776
47784
|
// node_modules/@iconify/react/dist/iconify.js
|
|
47777
|
-
import { createElement, forwardRef as forwardRef6, useState as useState8, useEffect as
|
|
47785
|
+
import { createElement, forwardRef as forwardRef6, useState as useState8, useEffect as useEffect4 } from "react";
|
|
47778
47786
|
"use client";
|
|
47779
47787
|
function getIconsTree(data, names) {
|
|
47780
47788
|
const icons = data.icons;
|
|
@@ -49241,11 +49249,11 @@ function IconComponent(props) {
|
|
|
49241
49249
|
}
|
|
49242
49250
|
}
|
|
49243
49251
|
}
|
|
49244
|
-
|
|
49252
|
+
useEffect4(() => {
|
|
49245
49253
|
setMounted(true);
|
|
49246
49254
|
return cleanup;
|
|
49247
49255
|
}, []);
|
|
49248
|
-
|
|
49256
|
+
useEffect4(() => {
|
|
49249
49257
|
if (mounted) {
|
|
49250
49258
|
updateState();
|
|
49251
49259
|
}
|
|
@@ -50165,13 +50173,13 @@ var register = (app) => {
|
|
|
50165
50173
|
name: "Website"
|
|
50166
50174
|
});
|
|
50167
50175
|
app.addMenuLink({
|
|
50168
|
-
to:
|
|
50176
|
+
to: "website",
|
|
50169
50177
|
icon: ChartPie3,
|
|
50170
50178
|
intlLabel: {
|
|
50171
50179
|
id: `${pluginId}.plugin.name`,
|
|
50172
50180
|
defaultMessage: "Website"
|
|
50173
50181
|
},
|
|
50174
|
-
Component:
|
|
50182
|
+
Component: () => Promise.resolve().then(() => (init_App(), exports_App)),
|
|
50175
50183
|
permissions: [],
|
|
50176
50184
|
position: 3
|
|
50177
50185
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTreeItems.d.ts","sourceRoot":"","sources":["../../../../../../admin/src/fields/DataNested/hooks/useTreeItems.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGrD,OAAO,KAAK,EAAY,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AASjE,MAAM,WAAW,UAAU;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;CACjC;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM;;;;
|
|
1
|
+
{"version":3,"file":"useTreeItems.d.ts","sourceRoot":"","sources":["../../../../../../admin/src/fields/DataNested/hooks/useTreeItems.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGrD,OAAO,KAAK,EAAY,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AASjE,MAAM,WAAW,UAAU;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;CACjC;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM;;;;uBAuB5C,gBAAgB;yBAId,gBAAgB;;2BAed,gBAAgB;yBASlB,gBAAgB;qBAkBpB,gBAAgB;;8BAkBP,YAAY;0BAyBlB,YAAY;EAsBvC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"app.components.NpsSurvey.banner-title": "您有多大可能会向朋友或同事推荐极客领航?",
|
|
3
|
+
"app.components.NpsSurvey.feedback-response": "非常感谢您的反馈!",
|
|
4
|
+
"app.components.NpsSurvey.feedback-question": "您有任何改进建议吗?",
|
|
5
|
+
"app.components.NpsSurvey.submit-feedback": "提交反馈",
|
|
6
|
+
"app.components.NpsSurvey.dismiss-survey-label": "关闭问卷",
|
|
7
|
+
"app.components.NpsSurvey.no-recommendation": "完全不可能",
|
|
8
|
+
"app.components.NpsSurvey.happy-to-recommend": "非常愿意",
|
|
9
|
+
"app.components.NpsSurvey.select-rating": "选择评分"
|
|
10
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"Auth.form.welcome.subtitle": "Log in to your account",
|
|
3
|
+
"Auth.form.welcome.title": "Hello, Welcome!",
|
|
4
|
+
"Auth.form.register.subtitle": "Credentials are only used to authenticate in Admin panel. All saved data will be stored in your database.",
|
|
5
|
+
"Auth.form.register.news.label": "By doing this you accept the {terms} and the {policy}."
|
|
6
|
+
}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
{
|
|
2
|
+
"content-manager.plugin.name": "内容管理",
|
|
3
|
+
"website.plugin.name": "网站",
|
|
4
|
+
"Translation": "翻译",
|
|
5
|
+
"About": "关于",
|
|
6
|
+
"Common": "通用",
|
|
7
|
+
"Home": "首页",
|
|
8
|
+
"Menu": "菜单",
|
|
9
|
+
"Site": "站点",
|
|
10
|
+
"Theme": "主题",
|
|
11
|
+
"search.placeholder": "搜索",
|
|
12
|
+
"website.widget.title": "仪表盘",
|
|
13
|
+
"website.widget.link": "前往内容管理",
|
|
14
|
+
"website.data-nested.modal.edit.title": "编辑项目",
|
|
15
|
+
"website.data-nested.modal.title": "标题",
|
|
16
|
+
"website.data-nested.modal.title.placeholder": "输入标题...",
|
|
17
|
+
"website.data-nested.modal.url": "网址",
|
|
18
|
+
"website.data-nested.modal.url.placeholder": "输入网址...",
|
|
19
|
+
"website.data-nested.modal.data": "数据",
|
|
20
|
+
"website.data-nested.modal.select-data": "选择数据",
|
|
21
|
+
"website.data-nested.modal.cancel": "取消",
|
|
22
|
+
"website.data-nested.modal.save": "保存",
|
|
23
|
+
"content-manager.containers.list.table-headers.status": "状态",
|
|
24
|
+
"i18n.list-view.table.header.label": "可用语言",
|
|
25
|
+
"list.asset.at.finished": "文件夹加载完成",
|
|
26
|
+
"global.more.actions": "更多操作",
|
|
27
|
+
"content-type-builder.search.placeholder": "搜索",
|
|
28
|
+
"chat.tooltips.open-chat": "打开聊天",
|
|
29
|
+
"chat.tooltips.close-chat": "关闭聊天",
|
|
30
|
+
"chat.tooltips.create-chat": "新建对话",
|
|
31
|
+
"chat.header.default-title": "新对话",
|
|
32
|
+
"chat.input.strapi-ai-can-make-errors": "Strapi AI 可能会出错",
|
|
33
|
+
"plugin::website.translation": "翻译",
|
|
34
|
+
"api::about.about": "关于",
|
|
35
|
+
"plugin::website.common": "通用",
|
|
36
|
+
"api::home.home": "首页",
|
|
37
|
+
"plugin::website.menu": "菜单",
|
|
38
|
+
"plugin::website.site": "网站",
|
|
39
|
+
"plugin::website.theme": "主题",
|
|
40
|
+
"base": "基础",
|
|
41
|
+
"base.image": "图片",
|
|
42
|
+
"base.video": "视频",
|
|
43
|
+
"site": "网站",
|
|
44
|
+
"site.banner": "横幅",
|
|
45
|
+
"site.social": "社交媒体",
|
|
46
|
+
"app.utils.drag": "拖拽",
|
|
47
|
+
"app.utils.toggle": "切换",
|
|
48
|
+
"Settings.application.header": "应用程序",
|
|
49
|
+
"review-workflows.plugin.name": "审核工作流",
|
|
50
|
+
"global.plugins.website": "网站管理",
|
|
51
|
+
"global.plugins.website.description": "极客领航网站管理插件",
|
|
52
|
+
"components.Select.placeholder": "请选择",
|
|
53
|
+
"User": "用户",
|
|
54
|
+
"Article": "文章",
|
|
55
|
+
"Article Category": "文章分类",
|
|
56
|
+
"Author": "作者",
|
|
57
|
+
"Global": "全局",
|
|
58
|
+
"Category": "分类",
|
|
59
|
+
"Visitor": "访客",
|
|
60
|
+
"Tag": "标签",
|
|
61
|
+
"Keyword": "关键词",
|
|
62
|
+
"Page": "页面",
|
|
63
|
+
"FAQ": "常见问题",
|
|
64
|
+
"Case": "案例",
|
|
65
|
+
"Case Category": "案例分类",
|
|
66
|
+
"Service": "服务子项",
|
|
67
|
+
"Service Category": "服务大类",
|
|
68
|
+
"Solution": "应用场景",
|
|
69
|
+
"Solution Category": "解决方案",
|
|
70
|
+
"Contact": "联系我们",
|
|
71
|
+
"Search": "搜索",
|
|
72
|
+
"Product": "产品",
|
|
73
|
+
"Product Item": "产品子项",
|
|
74
|
+
"Product Category": "产品类型",
|
|
75
|
+
"menu": "菜单",
|
|
76
|
+
"menu.items": "菜单项",
|
|
77
|
+
"menu.base": "基础菜单",
|
|
78
|
+
"menu.children-one": "一级子菜单",
|
|
79
|
+
"menu.children-two": "二级子菜单",
|
|
80
|
+
"menu.page": "页面",
|
|
81
|
+
"shared.contact": "联系方式",
|
|
82
|
+
"dashboard.widget.title": "仪表盘总览",
|
|
83
|
+
"dashboard.widget.link": "前往内容管理",
|
|
84
|
+
"api::common.common": "通用",
|
|
85
|
+
"api::menu.menu": "主菜单",
|
|
86
|
+
"api::article.article": "文章",
|
|
87
|
+
"api::author.author": "作者",
|
|
88
|
+
"api::category.category": "分类",
|
|
89
|
+
"api::tag.tag":"标签",
|
|
90
|
+
"api::visitor.visitor":"访客",
|
|
91
|
+
"api::global.global": "全局",
|
|
92
|
+
"api::keyword.keyword": "关键词",
|
|
93
|
+
"api::translation.translation": "翻译",
|
|
94
|
+
"api::article-category.article-category": "文章分类",
|
|
95
|
+
"api::site.site":"网站设置",
|
|
96
|
+
"home":"首页用",
|
|
97
|
+
"shared": "共享",
|
|
98
|
+
"home.customers":"合作客户",
|
|
99
|
+
"home.testimonials":"客户评价",
|
|
100
|
+
"shared.image":"图片",
|
|
101
|
+
"shared.block": "区块",
|
|
102
|
+
"shared.rich-text": "富文本",
|
|
103
|
+
"shared.slider": "滑块",
|
|
104
|
+
"shared.media": "媒体文件",
|
|
105
|
+
"shared.quote": "引用",
|
|
106
|
+
"shared.seo": "SEO",
|
|
107
|
+
"shared.resource": "资源",
|
|
108
|
+
"shared.social-media": "社交媒体",
|
|
109
|
+
"shared.link": "链接",
|
|
110
|
+
"shared.link-list": "链接列表",
|
|
111
|
+
"shared.menu": "菜单",
|
|
112
|
+
"shared.menu-2": "菜单2",
|
|
113
|
+
"shared.menu-3": "菜单3",
|
|
114
|
+
"shared.dataset": "数据集",
|
|
115
|
+
"dashboard.plugin.name": "网站数据",
|
|
116
|
+
"api::case.case": "案例",
|
|
117
|
+
"api::case-category.case-category": "案例分类",
|
|
118
|
+
"api::faq.faq": "常见问题",
|
|
119
|
+
"api::page.page": "页面",
|
|
120
|
+
"api::service.service": "服务子项",
|
|
121
|
+
"api::service-category.service-category": "服务大类",
|
|
122
|
+
"api::solution.solution": "应用场景",
|
|
123
|
+
"api::solution-category.solution-category": "解决方案",
|
|
124
|
+
"api::contact.contact": "联系我们",
|
|
125
|
+
"api::search.search": "搜索",
|
|
126
|
+
"api::product.product": "产品",
|
|
127
|
+
"api::product-category.product-category": "产品类型",
|
|
128
|
+
"blocks": "区块",
|
|
129
|
+
"blocks.cases": "案例区块",
|
|
130
|
+
"home.cases": "首页案例",
|
|
131
|
+
"shared.file": "文件",
|
|
132
|
+
"shared.office": "办公室",
|
|
133
|
+
"shared.youtube": "YouTube",
|
|
134
|
+
"api::product-item.product-item": "产品子项",
|
|
135
|
+
"view-switch.list": "列表视图",
|
|
136
|
+
"plugin::users-permissions.user": "用户",
|
|
137
|
+
"upload.modal.upload-list.sub-header.add-folder": "添加文件夹",
|
|
138
|
+
"cancel": "取消",
|
|
139
|
+
"pages.PurchaseRelease.description": "将内容分组并一起发布更新",
|
|
140
|
+
"pages.PurchaseRelease.perks1": "向发布版本添加多个条目",
|
|
141
|
+
"pages.PurchaseRelease.perks2": "快速识别包含错误的条目",
|
|
142
|
+
"pages.PurchaseRelease.perks3": "安排发布时间或手动发布",
|
|
143
|
+
"global.plugins.strapi-cloud": "Strapi 云服务",
|
|
144
|
+
"global.plugins.strapi-cloud.description": "将本地项目部署到 Strapi 云服务的说明",
|
|
145
|
+
"Settings.review-workflows.list.page.title": "审核流程",
|
|
146
|
+
"Settings.roles.form.permissions.create (invite)": "创建(邀请)",
|
|
147
|
+
"settings.page.purchase.description": "管理您的内容审核流程",
|
|
148
|
+
"settings.page.purchase.perks1": "可自定义的审核阶段",
|
|
149
|
+
"settings.page.purchase.perks2": "管理用户权限",
|
|
150
|
+
"settings.page.purchase.perks3": "支持 Webhook",
|
|
151
|
+
"users-permissions.List.button.roles": "添加新角色",
|
|
152
|
+
"users-permissions.[object Object]": "JWKS URL",
|
|
153
|
+
"http://www.client-app.com": "http://www.client-app.com",
|
|
154
|
+
"global.localeToggle.label": "选择界面语言",
|
|
155
|
+
"app.components.LeftMenuLinkContainer.settings": "设置",
|
|
156
|
+
"article": "文章",
|
|
157
|
+
"author": "作者",
|
|
158
|
+
"category": "分类",
|
|
159
|
+
"user": "用户",
|
|
160
|
+
"users and roles": "用户和角色",
|
|
161
|
+
"users": "用户",
|
|
162
|
+
"roles": "角色",
|
|
163
|
+
"project": "项目",
|
|
164
|
+
"general": "通用",
|
|
165
|
+
"transfer tokens": "传输令牌",
|
|
166
|
+
"api tokens": "API令牌",
|
|
167
|
+
"api Tokens": "API令牌",
|
|
168
|
+
"webhooks": "Web钩子",
|
|
169
|
+
"plugins and marketplace": "插件和市场",
|
|
170
|
+
"marketplace": "市场",
|
|
171
|
+
"Internationalization": "国际化",
|
|
172
|
+
"Locales": "语言环境",
|
|
173
|
+
"media library": "媒体库",
|
|
174
|
+
"email": "邮箱",
|
|
175
|
+
"content-manager": "内容管理器",
|
|
176
|
+
"single types": "单类型",
|
|
177
|
+
"collection types": "集合类型",
|
|
178
|
+
"components": "组件",
|
|
179
|
+
"content-type-builder": "内容类型构建器",
|
|
180
|
+
"upload": "上传",
|
|
181
|
+
"assets": "资源",
|
|
182
|
+
"users-permissions": "用户权限",
|
|
183
|
+
"providers": "提供商",
|
|
184
|
+
"emailTemplates": "邮件模板",
|
|
185
|
+
"advancedSettings": "高级设置",
|
|
186
|
+
"about": "关于",
|
|
187
|
+
"global": "全局",
|
|
188
|
+
"content-type-builder.attribute.null.description": "用于数据建模的类型",
|
|
189
|
+
"window.confirm.close-modal.file": "您确定吗?您的更改将会丢失。",
|
|
190
|
+
"form.attribute.condition.no-fields": "没有可用的布尔值或枚举字段来设置条件。",
|
|
191
|
+
"form.attribute.condition.apply": "应用条件",
|
|
192
|
+
"app.components.Select.placeholder": "请选择",
|
|
193
|
+
"global.administrator-mh4649ok": "管理员",
|
|
194
|
+
"global.strapi-author": "作者",
|
|
195
|
+
"global.strapi-editor": "编辑者",
|
|
196
|
+
"global.strapi-super-admin": "超级管理员",
|
|
197
|
+
"components.placeholder.select": "请选择",
|
|
198
|
+
"Keywords": "关键词",
|
|
199
|
+
"content-manager.apiError.Policy Failed": "策略失败",
|
|
200
|
+
"title.no-override": "标题",
|
|
201
|
+
"description.no-override": "描述",
|
|
202
|
+
"name.no-override": "名称",
|
|
203
|
+
"content-type-builder.contentType.draftAndPublish.description": "允许在发布前编写条目的草稿版本",
|
|
204
|
+
"content-type-builder.contentType.draftAndPublish.label": "草稿与发布",
|
|
205
|
+
"i18n.CheckboxConfirmation.Modal.title": "禁用本地化",
|
|
206
|
+
"containers.SettingPage.editSettings.description": "拖拽字段以构建布局",
|
|
207
|
+
"content-manager.containers.SettingPage.edit-settings.modal-form.mainField.hint": "设置显示字段",
|
|
208
|
+
"content-manager.containers.ListSettingsView.modal-form.size": "大小",
|
|
209
|
+
"components.LeftMenu.collection-types": "集合类型",
|
|
210
|
+
"components.LeftMenu.single-types": "单类型",
|
|
211
|
+
"components.LeftMenu.collectionTypes": "集合类型",
|
|
212
|
+
"components.LeftMenu.singleTypes": "单类型",
|
|
213
|
+
"tours.previous":"下一步",
|
|
214
|
+
"Settings.tokens.viewToken":"查看 Token",
|
|
215
|
+
"Settings.tokens.copy.copy":"复制",
|
|
216
|
+
"upload.header.breadcrumbs.nav.label": "文件夹导航",
|
|
217
|
+
"upload.header.actions.folder-level-up": "返回上一级",
|
|
218
|
+
"content-manager.content-types.api::article-category.article-category.description": "描述",
|
|
219
|
+
"content-manager.content-types.api::keyword.keyword.seo": "SEO 优化",
|
|
220
|
+
"actions.delete.label": "删除条目({locale})",
|
|
221
|
+
"geodata.geojson.section.info": "设置信息",
|
|
222
|
+
"geodata.geojson.info.label": "每个内容类型只允许一个 GeoJSON 字段"
|
|
223
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"content-manager.content-types.plugin::website.common.title": "标题",
|
|
3
|
+
"content-manager.content-types.plugin::website.common.description": "描述",
|
|
4
|
+
"content-manager.content-types.plugin::website.common.copyright": "版权",
|
|
5
|
+
"content-manager.content-types.plugin::website.common.icp": "ICP 备案",
|
|
6
|
+
"content-manager.content-types.plugin::website.common.socials": "社交媒体",
|
|
7
|
+
"content-manager.content-types.plugin::website.common.footLinks": "底部链接",
|
|
8
|
+
"content-manager.content-types.plugin::website.theme.style": "样式",
|
|
9
|
+
"content-manager.content-types.plugin::website.theme.logo": "Logo",
|
|
10
|
+
"content-manager.content-types.plugin::website.theme.icon": "图标",
|
|
11
|
+
"content-manager.content-types.plugin::website.theme.styles": "样式列表",
|
|
12
|
+
"content-manager.content-types.plugin::website.theme.scripts": "脚本列表",
|
|
13
|
+
"content-manager.content-types.plugin::website.site.title": "标题",
|
|
14
|
+
"content-manager.content-types.plugin::website.site.url": "网址",
|
|
15
|
+
"content-manager.content-types.plugin::website.site.enabled": "启用状态",
|
|
16
|
+
"content-manager.content-types.plugin::website.site.index": "首页配置",
|
|
17
|
+
"content-manager.content-types.plugin::website.site.robots": "robots.txt",
|
|
18
|
+
"content-manager.content-types.plugin::website.site.head": "页面头部",
|
|
19
|
+
"content-manager.content-types.plugin::website.site.foot": "页面底部",
|
|
20
|
+
"content-manager.content-types.plugin::website.site.gtagId": "Google Analytics ID",
|
|
21
|
+
"content-manager.content-types.plugin::website.site.inquiryEmail": "咨询邮箱",
|
|
22
|
+
"content-manager.content-types.plugin::website.menu.title": "标题",
|
|
23
|
+
"content-manager.content-types.plugin::website.menu.items": "菜单项",
|
|
24
|
+
"content-manager.content-types.plugin::website.translation.id": "ID",
|
|
25
|
+
"content-manager.content-types.plugin::website.translation.key": "键名",
|
|
26
|
+
"content-manager.content-types.plugin::website.translation.value": "值",
|
|
27
|
+
"content-manager.content-types.plugin::website.translation.createdAt": "创建时间",
|
|
28
|
+
"content-manager.content-types.api::about.about.title": "标题",
|
|
29
|
+
"content-manager.content-types.api::home.home.title": "标题"
|
|
30
|
+
}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
"website.menu.dashboard": "Dashboard 主页",
|
|
6
6
|
"website.menu.inquiry": "询盘列表",
|
|
7
7
|
"website.menu.visitor": "访客记录",
|
|
8
|
-
"website.fields.slugInput.label": "URL别名",
|
|
9
|
-
"website.fields.slugInput.description": "输入URL友好的别名",
|
|
8
|
+
"website.fields.slugInput.label": "URL 别名",
|
|
9
|
+
"website.fields.slugInput.description": "输入 URL 友好的别名",
|
|
10
10
|
"website.fields.slugInput.available": "可用",
|
|
11
11
|
"website.fields.slugInput.unavailable": "不可用",
|
|
12
12
|
"website.fields.slugInput.regenerate": "重新生成",
|
|
@@ -23,5 +23,10 @@
|
|
|
23
23
|
"website.icon-picker.back": "返回",
|
|
24
24
|
"website.icon-picker.search": "搜索图标...",
|
|
25
25
|
"website.icon-picker.loading": "加载中...",
|
|
26
|
-
"website.icon-picker.no-icons": "未找到图标"
|
|
26
|
+
"website.icon-picker.no-icons": "未找到图标",
|
|
27
|
+
"website.data-nested.modal.add.title": "添加项目",
|
|
28
|
+
"website.data-nested.modal.add": "添加",
|
|
29
|
+
"website.data-select.toggle.aria-label": "数据选择切换",
|
|
30
|
+
"website.data-select.title": "选择数据",
|
|
31
|
+
"website.data-select.search": "搜索内容类型..."
|
|
27
32
|
}
|