You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by ju...@apache.org on 2020/05/30 15:11:47 UTC
[incubator-apisix-dashboard] branch next updated: feat: update some
pages (#220)
This is an automated email from the ASF dual-hosted git repository.
juzhiyuan pushed a commit to branch next
in repository https://gitbox.apache.org/repos/asf/incubator-apisix-dashboard.git
The following commit(s) were added to refs/heads/next by this push:
new 5a5d3d6 feat: update some pages (#220)
5a5d3d6 is described below
commit 5a5d3d6ebbeaef2b6f22ac67bdb8b5c40e80ff44
Author: 琚致远 <ju...@apache.org>
AuthorDate: Sat May 30 23:11:37 2020 +0800
feat: update some pages (#220)
---
config/routes.ts | 6 ++---
src/app.tsx | 10 ++++----
src/components/RightContent/AvatarDropdown.tsx | 2 +-
src/locales/en-US.ts | 2 +-
src/locales/en-US/menu.ts | 2 +-
src/locales/en-US/{settings.ts => setting.ts} | 0
src/locales/zh-CN.ts | 2 +-
src/locales/zh-CN/menu.ts | 2 +-
src/locales/zh-CN/{settings.ts => setting.ts} | 0
.../{settings/Settings.tsx => Setting/Setting.tsx} | 28 +++++++++-------------
src/pages/Setting/index.ts | 2 ++
src/pages/{settings => Setting}/service.ts | 10 +-------
src/pages/{settings => Setting}/style.less | 0
src/pages/Setting/typingd.d.ts | 8 +++++++
src/pages/settings/index.ts | 2 --
15 files changed, 35 insertions(+), 41 deletions(-)
diff --git a/config/routes.ts b/config/routes.ts
index 67c1a72..1fee575 100644
--- a/config/routes.ts
+++ b/config/routes.ts
@@ -4,9 +4,9 @@ const routes = [
redirect: '/ssl',
},
{
- name: 'settings',
- path: '/settings',
- component: './settings',
+ name: 'setting',
+ path: '/setting',
+ component: './Setting',
layout: false,
hideInMenu: true,
},
diff --git a/src/app.tsx b/src/app.tsx
index 6336e81..be1c18c 100644
--- a/src/app.tsx
+++ b/src/app.tsx
@@ -3,7 +3,7 @@ import { notification } from 'antd';
import { RequestConfig, history } from 'umi';
import { BasicLayoutProps, Settings as LayoutSettings } from '@ant-design/pro-layout';
-import { getAdminAPIConfig } from '@/pages/settings';
+import { getAdminAPIConfig } from '@/pages/Setting';
import RightContent from '@/components/RightContent';
import Footer from '@/components/Footer';
import { queryCurrent } from '@/services/user';
@@ -14,7 +14,7 @@ export async function getInitialState(): Promise<{
settings?: LayoutSettings;
}> {
// 如果是设置页面,不执行
- if (history.location.pathname !== '/settings') {
+ if (history.location.pathname !== '/setting') {
try {
const currentUser = await queryCurrent();
return {
@@ -22,7 +22,7 @@ export async function getInitialState(): Promise<{
settings: defaultSettings,
};
} catch (error) {
- history.push('/settings');
+ history.push('/setting');
}
}
return {
@@ -83,9 +83,9 @@ const errorHandler = (error: { response: Response; data: any }): Promise<Respons
return Promise.reject(response);
};
-const { schema, host, path, prefix, key } = getAdminAPIConfig();
+const { schema, host, path, key } = getAdminAPIConfig();
export const request: RequestConfig = {
- prefix: `${schema}://${host}${path}${prefix}`,
+ prefix: `${schema}://${host}${path}`,
errorHandler,
credentials: 'same-origin',
headers: {
diff --git a/src/components/RightContent/AvatarDropdown.tsx b/src/components/RightContent/AvatarDropdown.tsx
index 9f3a674..567f2ae 100644
--- a/src/components/RightContent/AvatarDropdown.tsx
+++ b/src/components/RightContent/AvatarDropdown.tsx
@@ -17,7 +17,7 @@ export interface GlobalHeaderRightProps {
*/
const settings = async () => {
history.replace({
- pathname: '/settings',
+ pathname: '/setting',
search: stringify({
redirect: window.location.href,
}),
diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts
index 4ff9776..6dbf6ab 100644
--- a/src/locales/en-US.ts
+++ b/src/locales/en-US.ts
@@ -3,7 +3,7 @@ import globalHeader from './en-US/globalHeader';
import menu from './en-US/menu';
import pwa from './en-US/pwa';
import settingDrawer from './en-US/settingDrawer';
-import settings from './en-US/settings';
+import settings from './en-US/setting';
export default {
'navBar.lang': 'Languages',
diff --git a/src/locales/en-US/menu.ts b/src/locales/en-US/menu.ts
index 914dc06..8d99bc4 100644
--- a/src/locales/en-US/menu.ts
+++ b/src/locales/en-US/menu.ts
@@ -52,5 +52,5 @@ export default {
'menu.ssl.list': 'SSL List',
'menu.ssl.edit': 'Edit',
'menu.ssl.create': 'Create',
- 'menu.settings': 'Settings',
+ 'menu.setting': 'Settings',
};
diff --git a/src/locales/en-US/settings.ts b/src/locales/en-US/setting.ts
similarity index 100%
rename from src/locales/en-US/settings.ts
rename to src/locales/en-US/setting.ts
diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts
index b37ec0f..966f0a9 100644
--- a/src/locales/zh-CN.ts
+++ b/src/locales/zh-CN.ts
@@ -3,7 +3,7 @@ import globalHeader from './zh-CN/globalHeader';
import menu from './zh-CN/menu';
import pwa from './zh-CN/pwa';
import settingDrawer from './zh-CN/settingDrawer';
-import settings from './zh-CN/settings';
+import settings from './zh-CN/setting';
export default {
'navBar.lang': '语言',
diff --git a/src/locales/zh-CN/menu.ts b/src/locales/zh-CN/menu.ts
index 5a877bb..7278b7c 100644
--- a/src/locales/zh-CN/menu.ts
+++ b/src/locales/zh-CN/menu.ts
@@ -52,7 +52,7 @@ export default {
'menu.ssl.list': 'SSL 列表',
'menu.ssl.edit': '编辑',
'menu.ssl.create': '创建',
- 'menu.settings': '设置',
+ 'menu.setting': '设置',
'menu.routes': '路由',
'menu.routes.create': '创建',
};
diff --git a/src/locales/zh-CN/settings.ts b/src/locales/zh-CN/setting.ts
similarity index 100%
rename from src/locales/zh-CN/settings.ts
rename to src/locales/zh-CN/setting.ts
diff --git a/src/pages/settings/Settings.tsx b/src/pages/Setting/Setting.tsx
similarity index 81%
rename from src/pages/settings/Settings.tsx
rename to src/pages/Setting/Setting.tsx
index 5405c98..5ae4520 100644
--- a/src/pages/settings/Settings.tsx
+++ b/src/pages/Setting/Setting.tsx
@@ -14,20 +14,14 @@ const Settings: React.FC<{}> = () => {
const { formatMessage } = useIntl();
useEffect(() => {
- const adminAPIConfig = getAdminAPIConfig();
- form.setFieldsValue({
- adminAPISchema: adminAPIConfig.schema,
- adminAPIHost: adminAPIConfig.host,
- adminAPIPath: adminAPIConfig.path,
- adminAPIKey: adminAPIConfig.key,
- });
+ form.setFieldsValue(getAdminAPIConfig());
}, []);
- const onFinish = (values: any) => {
- localStorage.setItem('GLOBAL_ADMIN_API_SCHEMA', values.adminAPISchema);
- localStorage.setItem('GLOBAL_ADMIN_API_HOST', values.adminAPIHost);
- localStorage.setItem('GLOBAL_ADMIN_API_PATH', values.adminAPIPath);
- localStorage.setItem('GLOBAL_ADMIN_API_KEY', values.adminAPIKey);
+ const onFinish = ({ schema, host, path, key }: Setting.AdminAPI) => {
+ localStorage.setItem('GLOBAL_ADMIN_API_SCHEMA', schema);
+ localStorage.setItem('GLOBAL_ADMIN_API_HOST', host);
+ localStorage.setItem('GLOBAL_ADMIN_API_PATH', path);
+ localStorage.setItem('GLOBAL_ADMIN_API_KEY', key);
notification.success({
duration: 1,
@@ -59,9 +53,9 @@ const Settings: React.FC<{}> = () => {
<div className={styles.main}>
<Tabs>
<TabPane tab={formatMessage({ id: 'app.settings.admin-api' })}>
- <Form form={form} onFinish={onFinish}>
+ <Form form={form} onFinish={(values) => onFinish(values as Setting.AdminAPI)}>
<Form.Item
- name="adminAPISchema"
+ name="schema"
rules={[
{
required: true,
@@ -81,7 +75,7 @@ const Settings: React.FC<{}> = () => {
</Form.Item>
<Form.Item
- name="adminAPIHost"
+ name="host"
rules={[
{
required: true,
@@ -95,7 +89,7 @@ const Settings: React.FC<{}> = () => {
</Form.Item>
<Form.Item
- name="adminAPIPath"
+ name="path"
rules={[
{
required: true,
@@ -108,7 +102,7 @@ const Settings: React.FC<{}> = () => {
<Input placeholder={formatMessage({ id: 'app.settings.item.admin-api-path' })} />
</Form.Item>
- <Form.Item name="adminAPIKey">
+ <Form.Item name="key">
<Input placeholder={formatMessage({ id: 'app.settings.item.admin-api-key' })} />
</Form.Item>
diff --git a/src/pages/Setting/index.ts b/src/pages/Setting/index.ts
new file mode 100644
index 0000000..eb2672b
--- /dev/null
+++ b/src/pages/Setting/index.ts
@@ -0,0 +1,2 @@
+export { default } from './Setting';
+export * from './service';
diff --git a/src/pages/settings/service.ts b/src/pages/Setting/service.ts
similarity index 56%
rename from src/pages/settings/service.ts
rename to src/pages/Setting/service.ts
index 18d87bd..6d240da 100644
--- a/src/pages/settings/service.ts
+++ b/src/pages/Setting/service.ts
@@ -1,16 +1,8 @@
-export const getRequestPrefix = () => {
- if (process.env.NODE_ENV === 'development') {
- return '/api';
- }
- return '';
-};
-
-export const getAdminAPIConfig = (): SettingModule.AdminAPIConfig => {
+export const getAdminAPIConfig = (): Setting.AdminAPI => {
return {
schema: localStorage.getItem('GLOBAL_ADMIN_API_SCHEMA') || 'http',
host: localStorage.getItem('GLOBAL_ADMIN_API_HOST') || '127.0.0.1:9080',
path: localStorage.getItem('GLOBAL_ADMIN_API_PATH') || '/apisix/admin',
- prefix: getRequestPrefix(),
key: localStorage.getItem('GLOBAL_ADMIN_API_KEY') || '',
};
};
diff --git a/src/pages/settings/style.less b/src/pages/Setting/style.less
similarity index 100%
rename from src/pages/settings/style.less
rename to src/pages/Setting/style.less
diff --git a/src/pages/Setting/typingd.d.ts b/src/pages/Setting/typingd.d.ts
new file mode 100644
index 0000000..ff84901
--- /dev/null
+++ b/src/pages/Setting/typingd.d.ts
@@ -0,0 +1,8 @@
+declare namespace Setting {
+ interface AdminAPI {
+ schema: string;
+ host: string;
+ path: string;
+ key: string;
+ }
+}
diff --git a/src/pages/settings/index.ts b/src/pages/settings/index.ts
deleted file mode 100644
index d990ce6..0000000
--- a/src/pages/settings/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export { default } from './Settings';
-export * from './service';