From 5e0b5d0025440cc305d1987e312791aa2eff3511 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=84=9A=E9=81=93?= Date: Thu, 17 Jan 2019 14:29:50 +0800 Subject: [PATCH] feat: init blocks for Ant Design Pro V4! --- AccountCenter/.gitignore | 7 + AccountCenter/.umirc.js | 13 + AccountCenter/README.md | 17 ++ AccountCenter/package.json | 25 ++ AccountCenter/snapshot.png | Bin 0 -> 88254 bytes .../Center => AccountCenter/src}/Center.less | 6 +- AccountCenter/src/_mock.js | 138 +++++++++ AccountCenter/src/index.js | 191 ++++++++++++ .../user.js => AccountCenter/src/model.js | 4 +- AccountCenter/src/service.js | 9 + AccountSettings/.gitignore | 7 + AccountSettings/.umirc.js | 18 ++ AccountSettings/README.md | 17 ++ AccountSettings/jsconfig.json | 10 + AccountSettings/package.json | 25 ++ AccountSettings/snapshot.png | Bin 0 -> 89293 bytes AccountSettings/src/_mock.js | 66 +++++ .../src/components}/BaseView.less | 0 .../src/components}/GeographicView.js | 16 +- .../src/components}/GeographicView.less | 0 .../src/components}/PhoneView.js | 0 .../src/components}/PhoneView.less | 0 .../src/components/base.js | 41 ++- .../src/components/binding.js | 18 +- .../src/components/notification.js | 16 +- .../src/components/security.js | 36 +-- .../src}/geographic/city.json | 0 .../src}/geographic/province.json | 0 AccountSettings/src/index.js | 137 +++++++++ AccountSettings/src/locales/en-US.js | 60 ++++ AccountSettings/src/locales/zh-CN.js | 55 ++++ AccountSettings/src/locales/zh-TW.js | 55 ++++ .../src/model.js | 55 +++- AccountSettings/src/service.js | 17 ++ .../src/style.less | 0 AdvancedForm/.gitignore | 7 + AdvancedForm/.umirc.js | 12 + AdvancedForm/README.md | 17 ++ AdvancedForm/package.json | 27 ++ AdvancedForm/snapshot.png | Bin 0 -> 68714 bytes AdvancedForm/src/_mock.js | 5 + .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 0 .../src/components}/TableForm.js | 4 +- .../src/index.js | 14 +- AdvancedForm/src/locales/en-US.js | 61 ++++ AdvancedForm/src/locales/pt-BR.js | 57 ++++ AdvancedForm/src/locales/zh-CN.js | 59 ++++ AdvancedForm/src/locales/zh-TW.js | 59 ++++ AdvancedForm/src/model.js | 15 + AdvancedForm/src/service.js | 8 + .../Forms => AdvancedForm/src}/style.less | 0 AdvancedProfile/.gitignore | 7 + AdvancedProfile/.umirc.js | 12 + AdvancedProfile/README.md | 17 ++ AdvancedProfile/package.json | 28 ++ AdvancedProfile/snapshot.png | Bin 0 -> 99835 bytes AdvancedProfile/src/_mock.js | 74 +++++ .../src/components/PageHeaderWrapper/index.js | 26 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src/index.js | 22 +- .../src/model.js | 12 +- AdvancedProfile/src/service.js | 5 + .../src/style.less | 0 Analysis/.gitignore | 7 + Analysis/.umirc.js | 12 + Analysis/README.md | 17 ++ Analysis/package.json | 28 ++ Analysis/snapshot.png | Bin 0 -> 86202 bytes mock/chart.js => Analysis/src/_mock.js | 2 +- .../src/components}/IntroduceRow.js | 39 +-- .../src/components}/OfflineData.js | 13 +- .../src}/components/PageLoading/index.js | 0 Analysis/src/components/ProportionSales.js | 65 +++++ .../src/components}/SalesCard.js | 28 +- .../src/components}/TopSearch.js | 26 +- .../Analysis.js => Analysis/src/index.js | 93 +++--- Analysis/src/locales/en-US.js | 34 +++ Analysis/src/locales/pt-BR.js | 34 +++ Analysis/src/locales/zh-CN.js | 34 +++ Analysis/src/locales/zh-TW.js | 34 +++ .../models/chart.js => Analysis/src/model.js | 4 +- Analysis/src/service.js | 5 + .../Analysis.less => Analysis/src/style.less | 21 +- {src => Analysis/src}/utils/Yuan.js | 2 +- Analysis/src/utils/utils.js | 50 ++++ {src => Analysis/src}/utils/utils.less | 0 BasicForm/.gitignore | 7 + BasicForm/.umirc.js | 12 + BasicForm/README.md | 17 ++ BasicForm/package.json | 26 ++ BasicForm/snapshot.png | Bin 0 -> 59712 bytes BasicForm/src/_mock.js | 5 + .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../BasicForm.js => BasicForm/src/index.js | 82 +++--- BasicForm/src/locales/en-US.js | 61 ++++ BasicForm/src/locales/pt-BR.js | 57 ++++ BasicForm/src/locales/zh-CN.js | 59 ++++ BasicForm/src/locales/zh-TW.js | 59 ++++ BasicForm/src/model.js | 15 + BasicForm/src/service.js | 8 + BasicForm/src/style.less | 90 ++++++ BasicList/.gitignore | 7 + BasicList/.umirc.js | 12 + BasicList/README.md | 17 ++ BasicList/package.json | 29 ++ BasicList/snapshot.png | Bin 0 -> 116304 bytes BasicList/src/_mock.js | 144 ++++++++++ .../BasicList.js => BasicList/src/index.js | 30 +- BasicList/src/locales/en-US.js | 3 + BasicList/src/locales/pt-BR.js | 3 + BasicList/src/locales/zh-CN.js | 3 + BasicList/src/locales/zh-TW.js | 3 + src/models/list.js => BasicList/src/model.js | 4 +- BasicList/src/service.js | 49 ++++ .../src/style.less | 2 +- BasicList/src/utils/utils.less | 50 ++++ BasicProfile/.gitignore | 7 + BasicProfile/.umirc.js | 12 + BasicProfile/README.md | 17 ++ BasicProfile/package.json | 26 ++ BasicProfile/snapshot.png | Bin 0 -> 84118 bytes mock/profile.js => BasicProfile/src/_mock.js | 74 +---- .../src/components/PageHeaderWrapper/index.js | 26 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src/index.js | 22 +- BasicProfile/src/model.js | 28 ++ BasicProfile/src/service.js | 5 + .../src/style.less | 0 CODE_OF_CONDUCT.md | 46 --- CardList/.gitignore | 7 + CardList/.umirc.js | 12 + CardList/README.md | 17 ++ CardList/package.json | 26 ++ CardList/snapshot.png | Bin 0 -> 116304 bytes CardList/src/_mock.js | 107 +++++++ .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../List/CardList.js => CardList/src/index.js | 18 +- .../activities.js => CardList/src/model.js | 12 +- CardList/src/service.js | 7 + .../CardList.less => CardList/src/style.less | 2 +- CardList/src/utils/utils.less | 50 ++++ Dockerfile | 12 - Dockerfile.dev | 11 - Dockerfile.hub | 11 - Exception403/.gitignore | 7 + Exception403/.umirc.js | 10 + Exception403/README.md | 17 ++ Exception403/package.json | 25 ++ Exception403/snapshot.png | Bin 0 -> 57433 bytes Exception403/src/index.js | 15 + Exception403/src/locales/en-US.js | 4 + Exception403/src/locales/pt-BR.js | 4 + Exception403/src/locales/zh-CN.js | 4 + Exception403/src/locales/zh-TW.js | 4 + Exception404/.gitignore | 7 + Exception404/.umirc.js | 10 + Exception404/README.md | 17 ++ Exception404/package.json | 25 ++ Exception404/snapshot.png | Bin 0 -> 51957 bytes Exception404/src/index.js | 15 + Exception404/src/locales/en-US.js | 4 + Exception404/src/locales/pt-BR.js | 4 + Exception404/src/locales/zh-CN.js | 4 + Exception404/src/locales/zh-TW.js | 4 + Exception500/.gitignore | 7 + Exception500/.umirc.js | 10 + Exception500/README.md | 17 ++ Exception500/package.json | 25 ++ Exception500/snapshot.png | Bin 0 -> 49925 bytes Exception500/src/index.js | 15 + Exception500/src/locales/en-US.js | 4 + Exception500/src/locales/pt-BR.js | 4 + Exception500/src/locales/zh-CN.js | 4 + Exception500/src/locales/zh-TW.js | 4 + LICENSE | 2 +- Monitor/.gitignore | 7 + Monitor/.umirc.js | 18 ++ Monitor/README.md | 17 ++ Monitor/package.json | 28 ++ Monitor/snapshot.png | Bin 0 -> 243606 bytes Monitor/src/_mock.js | 7 + .../src}/components/ActiveChart/index.js | 5 +- .../src}/components/ActiveChart/index.less | 0 .../Monitor.js => Monitor/src/index.js | 70 ++--- Monitor/src/locales/en-US.js | 18 ++ Monitor/src/locales/pt-BR.js | 19 ++ Monitor/src/locales/zh-CN.js | 18 ++ Monitor/src/locales/zh-TW.js | 18 ++ .../models/monitor.js => Monitor/src/model.js | 4 +- Monitor/src/service.js | 5 + .../Monitor.less => Monitor/src/style.less | 1 - README.md | 137 +-------- README.ru-RU.md | 102 ------- README.zh-CN.md | 121 -------- ResultFail/.gitignore | 7 + ResultFail/.umirc.js | 12 + ResultFail/README.md | 17 ++ ResultFail/package.json | 24 ++ ResultFail/snapshot.png | Bin 0 -> 41730 bytes .../Error.js => ResultFail/src/index.js | 37 ++- ResultFail/src/locales/en-US.js | 11 + ResultFail/src/locales/zh-CN.js | 10 + ResultFail/src/locales/zh-TW.js | 10 + ResultSuccess/.gitignore | 7 + ResultSuccess/.umirc.js | 12 + ResultSuccess/README.md | 17 ++ ResultSuccess/package.json | 24 ++ ResultSuccess/snapshot.png | Bin 0 -> 63862 bytes .../Success.js => ResultSuccess/src/index.js | 55 ++-- ResultSuccess/src/locales/en-US.js | 19 ++ ResultSuccess/src/locales/zh-CN.js | 19 ++ ResultSuccess/src/locales/zh-TW.js | 19 ++ SearchListApplications/.gitignore | 7 + SearchListApplications/.umirc.js | 12 + SearchListApplications/README.md | 17 ++ SearchListApplications/package.json | 31 ++ SearchListApplications/snapshot.png | Bin 0 -> 72028 bytes SearchListApplications/src/_mock.js | 107 +++++++ .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src}/components/StandardFormRow/index.js | 0 .../components/StandardFormRow/index.less | 0 SearchListApplications/src/index.js | 201 +++++++++++++ SearchListApplications/src/model.js | 28 ++ SearchListApplications/src/service.js | 7 + .../src/style.less | 2 +- SearchListApplications/src/utils/utils.js | 28 ++ SearchListApplications/src/utils/utils.less | 50 ++++ SearchListArticles/.gitignore | 7 + SearchListArticles/.umirc.js | 12 + SearchListArticles/README.md | 17 ++ SearchListArticles/package.json | 28 ++ SearchListArticles/snapshot.png | Bin 0 -> 110013 bytes SearchListArticles/src/_mock.js | 107 +++++++ .../components/ArticleListContent/index.js | 0 .../components/ArticleListContent/index.less | 0 .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src/components/StandardFormRow/index.js | 24 ++ .../src/components/StandardFormRow/index.less | 72 +++++ .../src/index.js | 47 ++- SearchListArticles/src/model.js | 41 +++ SearchListArticles/src/service.js | 7 + .../src/style.less | 0 SearchListProjects/.gitignore | 7 + SearchListProjects/.umirc.js | 12 + SearchListProjects/README.md | 17 ++ SearchListProjects/package.json | 28 ++ SearchListProjects/snapshot.png | Bin 0 -> 326707 bytes SearchListProjects/src/_mock.js | 107 +++++++ .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src/components/StandardFormRow/index.js | 24 ++ .../src/components/StandardFormRow/index.less | 72 +++++ SearchListProjects/src/index.js | 170 +++++++++++ SearchListProjects/src/model.js | 28 ++ SearchListProjects/src/service.js | 7 + .../src/style.less | 2 +- SearchListProjects/src/utils/utils.less | 50 ++++ StepForm/.gitignore | 7 + StepForm/.umirc.js | 12 + StepForm/README.md | 17 ++ StepForm/package.json | 27 ++ StepForm/snapshot.png | Bin 0 -> 71807 bytes StepForm/src/_mock.js | 5 + .../src/components/PageHeaderWrapper/index.js | 25 ++ .../components/PageHeaderWrapper/index.less | 11 + .../src/components/Step1/index.js | 14 +- .../src/components/Step1/index.less | 0 .../src/components/Step2/index.js | 18 +- StepForm/src/components/Step2/index.less | 78 +++++ .../src/components/Step3/index.js | 16 +- StepForm/src/components/Step3/index.less | 78 +++++ StepForm/src/index.js | 60 ++++ StepForm/src/locales/en-US.js | 61 ++++ StepForm/src/locales/pt-BR.js | 57 ++++ StepForm/src/locales/zh-CN.js | 59 ++++ StepForm/src/locales/zh-TW.js | 59 ++++ .../models/form.js => StepForm/src/model.js | 27 +- StepForm/src/service.js | 8 + StepForm/src/style.less | 90 ++++++ StepForm/src/utils/utils.js | 5 + TableList/.gitignore | 7 + TableList/.umirc.js | 12 + TableList/README.md | 17 ++ TableList/package.json | 27 ++ TableList/snapshot.png | Bin 0 -> 136098 bytes mock/rule.js => TableList/src/_mock.js | 13 +- .../src}/components/StandardTable/index.js | 0 .../src}/components/StandardTable/index.less | 0 .../TableList.js => TableList/src/index.js | 41 ++- TableList/src/locales/en-US.js | 1 + TableList/src/locales/pt-BR.js | 1 + TableList/src/locales/zh-CN.js | 1 + TableList/src/locales/zh-TW.js | 1 + .../models/rule.js => TableList/src/model.js | 4 +- TableList/src/service.js | 37 +++ .../src/style.less | 2 +- TableList/src/utils/utils.less | 50 ++++ UserLogin/.gitignore | 7 + UserLogin/.umirc.js | 12 + UserLogin/README.md | 17 ++ UserLogin/package.json | 28 ++ UserLogin/snapshot.png | Bin 0 -> 26604 bytes UserLogin/src/_mock.js | 31 ++ .../User/Login.js => UserLogin/src/index.js | 65 ++--- UserLogin/src/locales/en-US.js | 76 +++++ UserLogin/src/locales/zh-CN.js | 74 +++++ UserLogin/src/locales/zh-TW.js | 74 +++++ src/models/login.js => UserLogin/src/model.js | 30 +- UserLogin/src/service.js | 12 + .../Login.less => UserLogin/src/style.less | 7 + {src => UserLogin/src}/utils/Authorized.js | 2 +- {src => UserLogin/src}/utils/authority.js | 0 UserLogin/src/utils/utils.js | 5 + UserRegister/.gitignore | 7 + UserRegister/.umirc.js | 18 ++ UserRegister/README.md | 17 ++ UserRegister/package.json | 29 ++ UserRegister/snapshot.png | Bin 0 -> 24514 bytes UserRegister/src/_mock.js | 5 + .../Register.js => UserRegister/src/index.js | 60 ++-- UserRegister/src/locales/en-US.js | 76 +++++ UserRegister/src/locales/zh-CN.js | 74 +++++ UserRegister/src/locales/zh-TW.js | 74 +++++ .../register.js => UserRegister/src/model.js | 8 +- UserRegister/src/service.js | 8 + .../src/style.less | 0 UserRegisterResult/.gitignore | 7 + UserRegisterResult/.umirc.js | 18 ++ UserRegisterResult/README.md | 17 ++ UserRegisterResult/package.json | 24 ++ UserRegisterResult/snapshot.png | Bin 0 -> 34613 bytes .../src/index.js | 16 +- UserRegisterResult/src/locales/en-US.js | 22 ++ UserRegisterResult/src/locales/zh-CN.js | 22 ++ UserRegisterResult/src/locales/zh-TW.js | 22 ++ .../src/style.less | 0 Workplace/.gitignore | 7 + Workplace/.umirc.js | 12 + Workplace/README.md | 17 ++ Workplace/package.json | 28 ++ Workplace/snapshot.png | Bin 0 -> 158342 bytes mock/api.js => Workplace/src/_mock.js | 235 +++++++-------- .../components/EditableLinkGroup/index.js | 0 .../components/EditableLinkGroup/index.less | 0 .../src/components/PageHeaderWrapper/index.js | 26 ++ .../components/PageHeaderWrapper/index.less | 11 + .../Workplace.js => Workplace/src/index.js | 35 +-- Workplace/src/model.js | 116 ++++++++ Workplace/src/service.js | 17 ++ .../src/style.less | 2 +- Workplace/src/utils.less | 50 ++++ _scripts/lint-prettier.js | 46 +++ {scripts => _scripts}/prettier.js | 21 +- appveyor.yml | 26 -- config/config.js | 114 -------- config/plugin.config.js | 33 --- config/router.config.js | 263 ----------------- docker/docker-compose.dev.yml | 14 - docker/docker-compose.yml | 21 -- docker/nginx.conf | 22 -- firebase.json | 13 - functions/index.js | 10 - functions/matchMock.js | 115 -------- functions/package.json | 23 -- jest-puppeteer.config.js | 15 - jest.config.js | 4 - mock/geographic.js | 15 - mock/notices.js | 115 -------- mock/route.js | 5 - mock/user.js | 138 --------- netlify.toml | 13 - package.json | 106 +------ public/favicon.png | Bin 2849 -> 0 bytes public/icons/icon-128x128.png | Bin 1329 -> 0 bytes public/icons/icon-192x192.png | Bin 1856 -> 0 bytes public/icons/icon-512x512.png | Bin 5082 -> 0 bytes scripts/generateMock.js | 3 - scripts/getPrettierFiles.js | 21 -- scripts/lint-prettier.js | 50 ---- src/app.js | 38 --- src/assets/logo.svg | 43 --- src/components/Authorized/Authorized.js | 8 - .../Authorized/AuthorizedRoute.d.ts | 13 - src/components/Authorized/AuthorizedRoute.js | 15 - src/components/Authorized/CheckPermissions.js | 88 ------ .../Authorized/CheckPermissions.test.js | 55 ---- src/components/Authorized/PromiseRender.js | 65 ----- src/components/Authorized/Secured.js | 55 ---- .../Authorized/demo/AuthorizedArray.md | 23 -- .../Authorized/demo/AuthorizedFunction.md | 31 -- src/components/Authorized/demo/basic.md | 25 -- src/components/Authorized/demo/secured.md | 28 -- src/components/Authorized/index.d.ts | 32 --- src/components/Authorized/index.js | 11 - src/components/Authorized/index.md | 58 ---- src/components/Authorized/renderAuthorize.js | 25 -- src/components/AvatarList/AvatarItem.d.ts | 10 - src/components/AvatarList/demo/maxLength.md | 24 -- src/components/AvatarList/demo/simple.md | 20 -- src/components/AvatarList/index.d.ts | 14 - src/components/AvatarList/index.en-US.md | 24 -- src/components/AvatarList/index.js | 61 ---- src/components/AvatarList/index.less | 50 ---- src/components/AvatarList/index.test.js | 29 -- src/components/AvatarList/index.zh-CN.md | 25 -- src/components/Charts/Bar/index.d.ts | 15 - src/components/Charts/Bar/index.js | 113 -------- src/components/Charts/ChartCard/index.d.ts | 14 - src/components/Charts/ChartCard/index.js | 82 ------ src/components/Charts/ChartCard/index.less | 75 ----- src/components/Charts/Field/index.d.ts | 8 - src/components/Charts/Field/index.js | 12 - src/components/Charts/Field/index.less | 17 -- src/components/Charts/Gauge/index.d.ts | 11 - src/components/Charts/Gauge/index.js | 167 ----------- src/components/Charts/MiniArea/index.d.ts | 29 -- src/components/Charts/MiniArea/index.js | 108 ------- src/components/Charts/MiniBar/index.d.ts | 12 - src/components/Charts/MiniBar/index.js | 51 ---- src/components/Charts/MiniProgress/index.d.ts | 10 - src/components/Charts/MiniProgress/index.js | 27 -- src/components/Charts/MiniProgress/index.less | 35 --- src/components/Charts/Pie/index.d.ts | 21 -- src/components/Charts/Pie/index.js | 271 ------------------ src/components/Charts/Pie/index.less | 94 ------ src/components/Charts/Radar/index.d.ts | 15 - src/components/Charts/Radar/index.js | 184 ------------ src/components/Charts/Radar/index.less | 46 --- src/components/Charts/TagCloud/index.d.ts | 11 - src/components/Charts/TagCloud/index.js | 182 ------------ src/components/Charts/TagCloud/index.less | 6 - .../Charts/TimelineChart/index.d.ts | 14 - src/components/Charts/TimelineChart/index.js | 120 -------- .../Charts/TimelineChart/index.less | 3 - src/components/Charts/WaterWave/index.d.ts | 10 - src/components/Charts/WaterWave/index.js | 213 -------------- src/components/Charts/WaterWave/index.less | 28 -- src/components/Charts/autoHeight.js | 62 ---- src/components/Charts/bizcharts.d.ts | 3 - src/components/Charts/bizcharts.js | 3 - src/components/Charts/demo/bar.md | 26 -- src/components/Charts/demo/chart-card.md | 95 ------ src/components/Charts/demo/gauge.md | 18 -- src/components/Charts/demo/mini-area.md | 28 -- src/components/Charts/demo/mini-bar.md | 28 -- src/components/Charts/demo/mini-pie.md | 16 -- src/components/Charts/demo/mini-progress.md | 12 - src/components/Charts/demo/mix.md | 84 ------ src/components/Charts/demo/pie.md | 54 ---- src/components/Charts/demo/radar.md | 64 ----- src/components/Charts/demo/tag-cloud.md | 25 -- src/components/Charts/demo/timeline-chart.md | 27 -- src/components/Charts/demo/waterwave.md | 20 -- src/components/Charts/g2.js | 15 - src/components/Charts/index.d.ts | 17 -- src/components/Charts/index.js | 49 ---- src/components/Charts/index.less | 19 -- src/components/Charts/index.md | 132 --------- src/components/CountDown/demo/simple.md | 24 -- src/components/CountDown/index.d.ts | 9 - src/components/CountDown/index.en-US.md | 15 - src/components/CountDown/index.js | 121 -------- src/components/CountDown/index.zh-CN.md | 16 -- .../DescriptionList/Description.d.ts | 9 - src/components/DescriptionList/Description.js | 22 -- .../DescriptionList/DescriptionList.js | 33 --- src/components/DescriptionList/demo/basic.md | 43 --- .../DescriptionList/demo/vertical.md | 43 --- src/components/DescriptionList/index.d.ts | 15 - src/components/DescriptionList/index.en-US.md | 33 --- src/components/DescriptionList/index.js | 5 - src/components/DescriptionList/index.less | 77 ----- src/components/DescriptionList/index.zh-CN.md | 37 --- src/components/DescriptionList/responsive.js | 6 - src/components/EditableItem/index.js | 50 ---- src/components/EditableItem/index.less | 25 -- src/components/Ellipsis/demo/line.md | 31 -- src/components/Ellipsis/demo/number.md | 28 -- src/components/Ellipsis/index.d.ts | 21 -- src/components/Ellipsis/index.en-US.md | 16 -- src/components/Ellipsis/index.js | 270 ----------------- src/components/Ellipsis/index.less | 24 -- src/components/Ellipsis/index.test.js | 13 - src/components/Ellipsis/index.zh-CN.md | 17 -- src/components/Exception/demo/403.md | 29 -- src/components/Exception/demo/404.md | 22 -- src/components/Exception/demo/500.md | 22 -- src/components/Exception/index.d.ts | 15 - src/components/Exception/index.en-US.md | 20 -- src/components/Exception/index.js | 61 ---- src/components/Exception/index.less | 89 ------ src/components/Exception/index.zh-CN.md | 21 -- src/components/Exception/typeConfig.js | 19 -- src/components/FooterToolbar/demo/basic.md | 44 --- src/components/FooterToolbar/index.d.ts | 7 - src/components/FooterToolbar/index.en-US.md | 18 -- src/components/FooterToolbar/index.js | 47 --- src/components/FooterToolbar/index.less | 33 --- src/components/FooterToolbar/index.zh-CN.md | 19 -- src/components/GlobalFooter/demo/basic.md | 37 --- src/components/GlobalFooter/index.d.ts | 13 - src/components/GlobalFooter/index.js | 28 -- src/components/GlobalFooter/index.less | 29 -- src/components/GlobalFooter/index.md | 17 -- src/components/GlobalHeader/RightContent.js | 217 -------------- src/components/GlobalHeader/index.js | 41 --- src/components/GlobalHeader/index.less | 130 --------- src/components/HeaderDropdown/index.js | 13 - src/components/HeaderDropdown/index.less | 16 -- src/components/HeaderSearch/demo/basic.md | 34 --- src/components/HeaderSearch/index.d.ts | 15 - src/components/HeaderSearch/index.en-US.md | 24 -- src/components/HeaderSearch/index.js | 145 ---------- src/components/HeaderSearch/index.less | 32 --- src/components/HeaderSearch/index.zh-CN.md | 24 -- src/components/Login/LoginItem.d.ts | 11 - src/components/Login/LoginItem.js | 147 ---------- src/components/Login/LoginSubmit.js | 17 -- src/components/Login/LoginTab.d.ts | 7 - src/components/Login/LoginTab.js | 41 --- src/components/Login/demo/basic.md | 115 -------- src/components/Login/index.d.ts | 20 -- src/components/Login/index.en-US.md | 49 ---- src/components/Login/index.js | 132 --------- src/components/Login/index.less | 53 ---- src/components/Login/index.zh-CN.md | 49 ---- src/components/Login/loginContext.js | 4 - src/components/Login/map.js | 65 ----- src/components/NoticeIcon/NoticeIconTab.d.ts | 28 -- src/components/NoticeIcon/NoticeList.js | 108 ------- src/components/NoticeIcon/NoticeList.less | 94 ------ src/components/NoticeIcon/demo/basic.md | 12 - src/components/NoticeIcon/demo/popover.md | 178 ------------ src/components/NoticeIcon/index.d.ts | 27 -- src/components/NoticeIcon/index.en-US.md | 52 ---- src/components/NoticeIcon/index.js | 159 ---------- src/components/NoticeIcon/index.less | 26 -- src/components/NoticeIcon/index.zh-CN.md | 52 ---- src/components/NumberInfo/demo/basic.md | 30 -- src/components/NumberInfo/index.d.ts | 13 - src/components/NumberInfo/index.en-US.md | 19 -- src/components/NumberInfo/index.js | 41 --- src/components/NumberInfo/index.less | 68 ----- src/components/NumberInfo/index.zh-CN.md | 20 -- src/components/PageHeader/breadcrumb.d.ts | 6 - src/components/PageHeader/breadcrumb.js | 176 ------------ src/components/PageHeader/demo/image.md | 75 ----- src/components/PageHeader/demo/simple.md | 32 --- src/components/PageHeader/demo/standard.md | 102 ------- src/components/PageHeader/demo/structure.md | 68 ----- src/components/PageHeader/index.d.ts | 23 -- src/components/PageHeader/index.js | 82 ------ src/components/PageHeader/index.less | 161 ----------- src/components/PageHeader/index.md | 36 --- src/components/PageHeader/index.test.js | 43 --- .../PageHeaderWrapper/GridContent.js | 18 -- .../PageHeaderWrapper/GridContent.less | 10 - src/components/PageHeaderWrapper/index.js | 41 --- src/components/Result/demo/classic.md | 80 ------ src/components/Result/demo/error.md | 39 --- src/components/Result/demo/structure.md | 20 -- src/components/Result/index.d.ts | 11 - src/components/Result/index.js | 29 -- src/components/Result/index.less | 58 ---- src/components/Result/index.md | 20 -- src/components/SelectLang/index.js | 49 ---- src/components/SelectLang/index.less | 24 -- src/components/SettingDrawer/BlockCheckbox.js | 25 -- src/components/SettingDrawer/ThemeColor.js | 74 ----- src/components/SettingDrawer/ThemeColor.less | 21 -- src/components/SettingDrawer/index.js | 254 ---------------- src/components/SettingDrawer/index.less | 74 ----- src/components/SiderMenu/BaseMenu.js | 161 ----------- src/components/SiderMenu/SiderMenu.js | 87 ------ src/components/SiderMenu/SiderMenu.test.js | 39 --- src/components/SiderMenu/SiderMenuUtils.js | 39 --- src/components/SiderMenu/index.js | 26 -- src/components/SiderMenu/index.less | 96 ------- src/components/TagSelect/TagSelectOption.d.ts | 8 - src/components/TagSelect/demo/controlled.md | 50 ---- src/components/TagSelect/demo/expandable.md | 31 -- src/components/TagSelect/demo/simple.md | 25 -- src/components/TagSelect/index.d.ts | 17 -- src/components/TagSelect/index.js | 130 --------- src/components/TagSelect/index.less | 33 --- src/components/TagSelect/index.md | 29 -- src/components/TopNavHeader/index.js | 51 ---- src/components/TopNavHeader/index.less | 72 ----- src/components/Trend/demo/basic.md | 17 -- src/components/Trend/demo/reverse.md | 17 -- src/components/Trend/index.d.ts | 10 - src/components/Trend/index.js | 27 -- src/components/Trend/index.less | 37 --- src/components/Trend/index.md | 22 -- src/components/_utils/pathTools.js | 6 - src/components/_utils/pathTools.test.js | 17 -- src/defaultSettings.js | 10 - src/e2e/baseLayout.e2e.js | 34 --- src/e2e/home.e2e.js | 15 - src/e2e/login.e2e.js | 34 --- src/e2e/topMenu.e2e.js | 18 -- src/e2e/userLayout.e2e.js | 32 --- src/global.js | 54 ---- src/global.less | 33 --- src/layouts/BasicLayout.js | 233 --------------- src/layouts/BasicLayout.less | 6 - src/layouts/BlankLayout.js | 3 - src/layouts/Footer.js | 37 --- src/layouts/Header.js | 161 ----------- src/layouts/Header.less | 8 - src/layouts/MenuContext.js | 3 - src/layouts/UserLayout.js | 72 ----- src/layouts/UserLayout.less | 71 ----- src/locales/en-US.js | 33 --- src/locales/en-US/analysis.js | 34 --- src/locales/en-US/exception.js | 6 - src/locales/en-US/form.js | 38 --- src/locales/en-US/globalHeader.js | 18 -- src/locales/en-US/login.js | 39 --- src/locales/en-US/menu.js | 38 --- src/locales/en-US/monitor.js | 18 -- src/locales/en-US/pwa.js | 6 - src/locales/en-US/result.js | 28 -- src/locales/en-US/settingDrawer.js | 31 -- src/locales/en-US/settings.js | 60 ---- src/locales/pt-BR.js | 33 --- src/locales/pt-BR/analysis.js | 34 --- src/locales/pt-BR/exception.js | 6 - src/locales/pt-BR/form.js | 39 --- src/locales/pt-BR/globalHeader.js | 18 -- src/locales/pt-BR/login.js | 36 --- src/locales/pt-BR/menu.js | 38 --- src/locales/pt-BR/monitor.js | 19 -- src/locales/pt-BR/pwa.js | 7 - src/locales/pt-BR/result.js | 28 -- src/locales/pt-BR/settingDrawer.js | 32 --- src/locales/pt-BR/settings.js | 60 ---- src/locales/zh-CN.js | 33 --- src/locales/zh-CN/analysis.js | 34 --- src/locales/zh-CN/exception.js | 6 - src/locales/zh-CN/form.js | 37 --- src/locales/zh-CN/globalHeader.js | 18 -- src/locales/zh-CN/login.js | 38 --- src/locales/zh-CN/menu.js | 38 --- src/locales/zh-CN/monitor.js | 18 -- src/locales/zh-CN/pwa.js | 6 - src/locales/zh-CN/result.js | 27 -- src/locales/zh-CN/settingDrawer.js | 31 -- src/locales/zh-CN/settings.js | 55 ---- src/locales/zh-TW.js | 33 --- src/locales/zh-TW/analysis.js | 34 --- src/locales/zh-TW/exception.js | 6 - src/locales/zh-TW/form.js | 37 --- src/locales/zh-TW/globalHeader.js | 18 -- src/locales/zh-TW/login.js | 38 --- src/locales/zh-TW/menu.js | 38 --- src/locales/zh-TW/monitor.js | 18 -- src/locales/zh-TW/pwa.js | 6 - src/locales/zh-TW/result.js | 27 -- src/locales/zh-TW/settingDrawer.js | 31 -- src/locales/zh-TW/settings.js | 55 ---- src/manifest.json | 22 -- src/models/global.js | 141 --------- src/models/menu.js | 118 -------- src/models/project.js | 28 -- src/models/setting.js | 123 -------- src/pages/404.js | 13 - src/pages/Account/Center/Applications.js | 88 ------ src/pages/Account/Center/Articles.js | 59 ---- src/pages/Account/Center/Articles.less | 12 - src/pages/Account/Center/Center.js | 216 -------------- src/pages/Account/Center/Projects.js | 52 ---- src/pages/Account/Settings/Info.js | 125 -------- src/pages/Authorized.js | 13 - src/pages/Dashboard/ProportionSales.js | 58 ---- src/pages/Exception/403.js | 15 - src/pages/Exception/404.js | 15 - src/pages/Exception/500.js | 15 - src/pages/Exception/TriggerException.js | 50 ---- src/pages/Exception/models/error.js | 28 -- src/pages/Exception/style.less | 7 - src/pages/Forms/StepForm/index.js | 46 --- src/pages/List/Applications.js | 183 ------------ src/pages/List/List.js | 80 ------ src/pages/List/Projects.js | 154 ---------- src/pages/Result/Success.test.js | 9 - src/pages/document.ejs | 15 - src/service-worker.js | 65 ----- src/services/api.js | 126 -------- src/services/error.js | 5 - src/services/geographic.js | 9 - src/services/user.js | 9 - src/utils/authority.test.js | 19 -- src/utils/request.js | 155 ---------- src/utils/utils.js | 183 ------------ src/utils/utils.test.js | 62 ---- tests/run-tests.js | 43 --- tsconfig.json | 6 +- 703 files changed, 7619 insertions(+), 17251 deletions(-) create mode 100644 AccountCenter/.gitignore create mode 100644 AccountCenter/.umirc.js create mode 100644 AccountCenter/README.md create mode 100644 AccountCenter/package.json create mode 100644 AccountCenter/snapshot.png rename {src/pages/Account/Center => AccountCenter/src}/Center.less (92%) create mode 100644 AccountCenter/src/_mock.js create mode 100644 AccountCenter/src/index.js rename src/models/user.js => AccountCenter/src/model.js (90%) create mode 100644 AccountCenter/src/service.js create mode 100644 AccountSettings/.gitignore create mode 100644 AccountSettings/.umirc.js create mode 100644 AccountSettings/README.md create mode 100644 AccountSettings/jsconfig.json create mode 100644 AccountSettings/package.json create mode 100644 AccountSettings/snapshot.png create mode 100644 AccountSettings/src/_mock.js rename {src/pages/Account/Settings => AccountSettings/src/components}/BaseView.less (100%) rename {src/pages/Account/Settings => AccountSettings/src/components}/GeographicView.js (85%) rename {src/pages/Account/Settings => AccountSettings/src/components}/GeographicView.less (100%) rename {src/pages/Account/Settings => AccountSettings/src/components}/PhoneView.js (100%) rename {src/pages/Account/Settings => AccountSettings/src/components}/PhoneView.less (100%) rename src/pages/Account/Settings/BaseView.js => AccountSettings/src/components/base.js (72%) rename src/pages/Account/Settings/BindingView.js => AccountSettings/src/components/binding.js (59%) rename src/pages/Account/Settings/NotificationView.js => AccountSettings/src/components/notification.js (55%) rename src/pages/Account/Settings/SecurityView.js => AccountSettings/src/components/security.js (50%) rename {mock => AccountSettings/src}/geographic/city.json (100%) rename {mock => AccountSettings/src}/geographic/province.json (100%) create mode 100644 AccountSettings/src/index.js create mode 100644 AccountSettings/src/locales/en-US.js create mode 100644 AccountSettings/src/locales/zh-CN.js create mode 100644 AccountSettings/src/locales/zh-TW.js rename src/pages/Account/Settings/models/geographic.js => AccountSettings/src/model.js (50%) create mode 100644 AccountSettings/src/service.js rename src/pages/Account/Settings/Info.less => AccountSettings/src/style.less (100%) create mode 100644 AdvancedForm/.gitignore create mode 100644 AdvancedForm/.umirc.js create mode 100644 AdvancedForm/README.md create mode 100644 AdvancedForm/package.json create mode 100644 AdvancedForm/snapshot.png create mode 100644 AdvancedForm/src/_mock.js create mode 100644 AdvancedForm/src/components/PageHeaderWrapper/index.js rename {src => AdvancedForm/src}/components/PageHeaderWrapper/index.less (100%) rename {src/pages/Forms => AdvancedForm/src/components}/TableForm.js (98%) rename src/pages/Forms/AdvancedForm.js => AdvancedForm/src/index.js (96%) create mode 100644 AdvancedForm/src/locales/en-US.js create mode 100644 AdvancedForm/src/locales/pt-BR.js create mode 100644 AdvancedForm/src/locales/zh-CN.js create mode 100644 AdvancedForm/src/locales/zh-TW.js create mode 100644 AdvancedForm/src/model.js create mode 100644 AdvancedForm/src/service.js rename {src/pages/Forms => AdvancedForm/src}/style.less (100%) create mode 100644 AdvancedProfile/.gitignore create mode 100644 AdvancedProfile/.umirc.js create mode 100644 AdvancedProfile/README.md create mode 100644 AdvancedProfile/package.json create mode 100644 AdvancedProfile/snapshot.png create mode 100644 AdvancedProfile/src/_mock.js create mode 100644 AdvancedProfile/src/components/PageHeaderWrapper/index.js create mode 100644 AdvancedProfile/src/components/PageHeaderWrapper/index.less rename src/pages/Profile/AdvancedProfile.js => AdvancedProfile/src/index.js (94%) rename src/pages/Profile/models/profile.js => AdvancedProfile/src/model.js (60%) create mode 100644 AdvancedProfile/src/service.js rename src/pages/Profile/AdvancedProfile.less => AdvancedProfile/src/style.less (100%) create mode 100644 Analysis/.gitignore create mode 100644 Analysis/.umirc.js create mode 100644 Analysis/README.md create mode 100644 Analysis/package.json create mode 100644 Analysis/snapshot.png rename mock/chart.js => Analysis/src/_mock.js (98%) rename {src/pages/Dashboard => Analysis/src/components}/IntroduceRow.js (65%) rename {src/pages/Dashboard => Analysis/src/components}/OfflineData.js (80%) rename {src => Analysis/src}/components/PageLoading/index.js (100%) create mode 100755 Analysis/src/components/ProportionSales.js rename {src/pages/Dashboard => Analysis/src/components}/SalesCard.js (82%) rename {src/pages/Dashboard => Analysis/src/components}/TopSearch.js (69%) rename src/pages/Dashboard/Analysis.js => Analysis/src/index.js (62%) create mode 100644 Analysis/src/locales/en-US.js create mode 100644 Analysis/src/locales/pt-BR.js create mode 100644 Analysis/src/locales/zh-CN.js create mode 100644 Analysis/src/locales/zh-TW.js rename src/pages/Dashboard/models/chart.js => Analysis/src/model.js (93%) create mode 100644 Analysis/src/service.js rename src/pages/Dashboard/Analysis.less => Analysis/src/style.less (89%) rename {src => Analysis/src}/utils/Yuan.js (90%) create mode 100644 Analysis/src/utils/utils.js rename {src => Analysis/src}/utils/utils.less (100%) create mode 100644 BasicForm/.gitignore create mode 100644 BasicForm/.umirc.js create mode 100644 BasicForm/README.md create mode 100644 BasicForm/package.json create mode 100644 BasicForm/snapshot.png create mode 100644 BasicForm/src/_mock.js create mode 100644 BasicForm/src/components/PageHeaderWrapper/index.js create mode 100644 BasicForm/src/components/PageHeaderWrapper/index.less rename src/pages/Forms/BasicForm.js => BasicForm/src/index.js (66%) create mode 100644 BasicForm/src/locales/en-US.js create mode 100644 BasicForm/src/locales/pt-BR.js create mode 100644 BasicForm/src/locales/zh-CN.js create mode 100644 BasicForm/src/locales/zh-TW.js create mode 100644 BasicForm/src/model.js create mode 100644 BasicForm/src/service.js create mode 100644 BasicForm/src/style.less create mode 100644 BasicList/.gitignore create mode 100644 BasicList/.umirc.js create mode 100644 BasicList/README.md create mode 100644 BasicList/package.json create mode 100644 BasicList/snapshot.png create mode 100644 BasicList/src/_mock.js rename src/pages/List/BasicList.js => BasicList/src/index.js (93%) create mode 100644 BasicList/src/locales/en-US.js create mode 100644 BasicList/src/locales/pt-BR.js create mode 100644 BasicList/src/locales/zh-CN.js create mode 100644 BasicList/src/locales/zh-TW.js rename src/models/list.js => BasicList/src/model.js (95%) create mode 100644 BasicList/src/service.js rename src/pages/List/BasicList.less => BasicList/src/style.less (99%) create mode 100644 BasicList/src/utils/utils.less create mode 100644 BasicProfile/.gitignore create mode 100644 BasicProfile/.umirc.js create mode 100644 BasicProfile/README.md create mode 100644 BasicProfile/package.json create mode 100644 BasicProfile/snapshot.png rename mock/profile.js => BasicProfile/src/_mock.js (51%) create mode 100644 BasicProfile/src/components/PageHeaderWrapper/index.js create mode 100644 BasicProfile/src/components/PageHeaderWrapper/index.less rename src/pages/Profile/BasicProfile.js => BasicProfile/src/index.js (89%) create mode 100644 BasicProfile/src/model.js create mode 100644 BasicProfile/src/service.js rename src/pages/Profile/BasicProfile.less => BasicProfile/src/style.less (100%) delete mode 100644 CODE_OF_CONDUCT.md create mode 100644 CardList/.gitignore create mode 100644 CardList/.umirc.js create mode 100644 CardList/README.md create mode 100644 CardList/package.json create mode 100644 CardList/snapshot.png create mode 100644 CardList/src/_mock.js create mode 100644 CardList/src/components/PageHeaderWrapper/index.js create mode 100644 CardList/src/components/PageHeaderWrapper/index.less rename src/pages/List/CardList.js => CardList/src/index.js (87%) rename src/pages/Dashboard/models/activities.js => CardList/src/model.js (52%) create mode 100644 CardList/src/service.js rename src/pages/List/CardList.less => CardList/src/style.less (98%) create mode 100644 CardList/src/utils/utils.less delete mode 100644 Dockerfile delete mode 100644 Dockerfile.dev delete mode 100644 Dockerfile.hub create mode 100644 Exception403/.gitignore create mode 100644 Exception403/.umirc.js create mode 100644 Exception403/README.md create mode 100644 Exception403/package.json create mode 100644 Exception403/snapshot.png create mode 100644 Exception403/src/index.js create mode 100644 Exception403/src/locales/en-US.js create mode 100644 Exception403/src/locales/pt-BR.js create mode 100644 Exception403/src/locales/zh-CN.js create mode 100644 Exception403/src/locales/zh-TW.js create mode 100644 Exception404/.gitignore create mode 100644 Exception404/.umirc.js create mode 100644 Exception404/README.md create mode 100644 Exception404/package.json create mode 100644 Exception404/snapshot.png create mode 100644 Exception404/src/index.js create mode 100644 Exception404/src/locales/en-US.js create mode 100644 Exception404/src/locales/pt-BR.js create mode 100644 Exception404/src/locales/zh-CN.js create mode 100644 Exception404/src/locales/zh-TW.js create mode 100644 Exception500/.gitignore create mode 100644 Exception500/.umirc.js create mode 100644 Exception500/README.md create mode 100644 Exception500/package.json create mode 100644 Exception500/snapshot.png create mode 100644 Exception500/src/index.js create mode 100644 Exception500/src/locales/en-US.js create mode 100644 Exception500/src/locales/pt-BR.js create mode 100644 Exception500/src/locales/zh-CN.js create mode 100644 Exception500/src/locales/zh-TW.js create mode 100644 Monitor/.gitignore create mode 100644 Monitor/.umirc.js create mode 100644 Monitor/README.md create mode 100644 Monitor/package.json create mode 100644 Monitor/snapshot.png create mode 100644 Monitor/src/_mock.js rename {src => Monitor/src}/components/ActiveChart/index.js (96%) rename {src => Monitor/src}/components/ActiveChart/index.less (100%) rename src/pages/Dashboard/Monitor.js => Monitor/src/index.js (75%) create mode 100644 Monitor/src/locales/en-US.js create mode 100644 Monitor/src/locales/pt-BR.js create mode 100644 Monitor/src/locales/zh-CN.js create mode 100644 Monitor/src/locales/zh-TW.js rename src/pages/Dashboard/models/monitor.js => Monitor/src/model.js (82%) create mode 100644 Monitor/src/service.js rename src/pages/Dashboard/Monitor.less => Monitor/src/style.less (91%) delete mode 100644 README.ru-RU.md delete mode 100644 README.zh-CN.md create mode 100644 ResultFail/.gitignore create mode 100644 ResultFail/.umirc.js create mode 100644 ResultFail/README.md create mode 100644 ResultFail/package.json create mode 100644 ResultFail/snapshot.png rename src/pages/Result/Error.js => ResultFail/src/index.js (60%) create mode 100644 ResultFail/src/locales/en-US.js create mode 100644 ResultFail/src/locales/zh-CN.js create mode 100644 ResultFail/src/locales/zh-TW.js create mode 100644 ResultSuccess/.gitignore create mode 100644 ResultSuccess/.umirc.js create mode 100644 ResultSuccess/README.md create mode 100644 ResultSuccess/package.json create mode 100644 ResultSuccess/snapshot.png rename src/pages/Result/Success.js => ResultSuccess/src/index.js (67%) create mode 100644 ResultSuccess/src/locales/en-US.js create mode 100644 ResultSuccess/src/locales/zh-CN.js create mode 100644 ResultSuccess/src/locales/zh-TW.js create mode 100644 SearchListApplications/.gitignore create mode 100644 SearchListApplications/.umirc.js create mode 100644 SearchListApplications/README.md create mode 100644 SearchListApplications/package.json create mode 100644 SearchListApplications/snapshot.png create mode 100644 SearchListApplications/src/_mock.js create mode 100644 SearchListApplications/src/components/PageHeaderWrapper/index.js create mode 100644 SearchListApplications/src/components/PageHeaderWrapper/index.less rename {src => SearchListApplications/src}/components/StandardFormRow/index.js (100%) rename {src => SearchListApplications/src}/components/StandardFormRow/index.less (100%) create mode 100644 SearchListApplications/src/index.js create mode 100644 SearchListApplications/src/model.js create mode 100644 SearchListApplications/src/service.js rename src/pages/List/Applications.less => SearchListApplications/src/style.less (96%) create mode 100644 SearchListApplications/src/utils/utils.js create mode 100644 SearchListApplications/src/utils/utils.less create mode 100644 SearchListArticles/.gitignore create mode 100644 SearchListArticles/.umirc.js create mode 100644 SearchListArticles/README.md create mode 100644 SearchListArticles/package.json create mode 100644 SearchListArticles/snapshot.png create mode 100644 SearchListArticles/src/_mock.js rename {src => SearchListArticles/src}/components/ArticleListContent/index.js (100%) rename {src => SearchListArticles/src}/components/ArticleListContent/index.less (100%) create mode 100644 SearchListArticles/src/components/PageHeaderWrapper/index.js create mode 100644 SearchListArticles/src/components/PageHeaderWrapper/index.less create mode 100644 SearchListArticles/src/components/StandardFormRow/index.js create mode 100644 SearchListArticles/src/components/StandardFormRow/index.less rename src/pages/List/Articles.js => SearchListArticles/src/index.js (85%) create mode 100644 SearchListArticles/src/model.js create mode 100644 SearchListArticles/src/service.js rename src/pages/List/Articles.less => SearchListArticles/src/style.less (100%) create mode 100644 SearchListProjects/.gitignore create mode 100644 SearchListProjects/.umirc.js create mode 100644 SearchListProjects/README.md create mode 100644 SearchListProjects/package.json create mode 100644 SearchListProjects/snapshot.png create mode 100644 SearchListProjects/src/_mock.js create mode 100644 SearchListProjects/src/components/PageHeaderWrapper/index.js create mode 100644 SearchListProjects/src/components/PageHeaderWrapper/index.less create mode 100644 SearchListProjects/src/components/StandardFormRow/index.js create mode 100644 SearchListProjects/src/components/StandardFormRow/index.less create mode 100644 SearchListProjects/src/index.js create mode 100644 SearchListProjects/src/model.js create mode 100644 SearchListProjects/src/service.js rename src/pages/List/Projects.less => SearchListProjects/src/style.less (96%) create mode 100644 SearchListProjects/src/utils/utils.less create mode 100644 StepForm/.gitignore create mode 100644 StepForm/.umirc.js create mode 100644 StepForm/README.md create mode 100644 StepForm/package.json create mode 100644 StepForm/snapshot.png create mode 100644 StepForm/src/_mock.js create mode 100644 StepForm/src/components/PageHeaderWrapper/index.js create mode 100644 StepForm/src/components/PageHeaderWrapper/index.less rename src/pages/Forms/StepForm/Step1.js => StepForm/src/components/Step1/index.js (92%) rename src/pages/Forms/StepForm/style.less => StepForm/src/components/Step1/index.less (100%) rename src/pages/Forms/StepForm/Step2.js => StepForm/src/components/Step2/index.js (86%) create mode 100644 StepForm/src/components/Step2/index.less rename src/pages/Forms/StepForm/Step3.js => StepForm/src/components/Step3/index.js (84%) create mode 100644 StepForm/src/components/Step3/index.less create mode 100644 StepForm/src/index.js create mode 100644 StepForm/src/locales/en-US.js create mode 100644 StepForm/src/locales/pt-BR.js create mode 100644 StepForm/src/locales/zh-CN.js create mode 100644 StepForm/src/locales/zh-TW.js rename src/pages/Forms/models/form.js => StepForm/src/model.js (55%) create mode 100644 StepForm/src/service.js create mode 100644 StepForm/src/style.less create mode 100644 StepForm/src/utils/utils.js create mode 100644 TableList/.gitignore create mode 100644 TableList/.umirc.js create mode 100644 TableList/README.md create mode 100644 TableList/package.json create mode 100644 TableList/snapshot.png rename mock/rule.js => TableList/src/_mock.js (94%) rename {src => TableList/src}/components/StandardTable/index.js (100%) rename {src => TableList/src}/components/StandardTable/index.less (100%) rename src/pages/List/TableList.js => TableList/src/index.js (96%) create mode 100644 TableList/src/locales/en-US.js create mode 100644 TableList/src/locales/pt-BR.js create mode 100644 TableList/src/locales/zh-CN.js create mode 100644 TableList/src/locales/zh-TW.js rename src/pages/List/models/rule.js => TableList/src/model.js (90%) create mode 100644 TableList/src/service.js rename src/pages/List/TableList.less => TableList/src/style.less (96%) create mode 100644 TableList/src/utils/utils.less create mode 100644 UserLogin/.gitignore create mode 100644 UserLogin/.umirc.js create mode 100644 UserLogin/README.md create mode 100644 UserLogin/package.json create mode 100644 UserLogin/snapshot.png create mode 100644 UserLogin/src/_mock.js rename src/pages/User/Login.js => UserLogin/src/index.js (61%) create mode 100644 UserLogin/src/locales/en-US.js create mode 100644 UserLogin/src/locales/zh-CN.js create mode 100644 UserLogin/src/locales/zh-TW.js rename src/models/login.js => UserLogin/src/model.js (66%) create mode 100644 UserLogin/src/service.js rename src/pages/User/Login.less => UserLogin/src/style.less (84%) rename {src => UserLogin/src}/utils/Authorized.js (82%) rename {src => UserLogin/src}/utils/authority.js (100%) create mode 100644 UserLogin/src/utils/utils.js create mode 100644 UserRegister/.gitignore create mode 100644 UserRegister/.umirc.js create mode 100644 UserRegister/README.md create mode 100644 UserRegister/package.json create mode 100644 UserRegister/snapshot.png create mode 100644 UserRegister/src/_mock.js rename src/pages/User/Register.js => UserRegister/src/index.js (80%) create mode 100644 UserRegister/src/locales/en-US.js create mode 100644 UserRegister/src/locales/zh-CN.js create mode 100644 UserRegister/src/locales/zh-TW.js rename src/pages/User/models/register.js => UserRegister/src/model.js (64%) create mode 100644 UserRegister/src/service.js rename src/pages/User/Register.less => UserRegister/src/style.less (100%) create mode 100644 UserRegisterResult/.gitignore create mode 100644 UserRegisterResult/.umirc.js create mode 100644 UserRegisterResult/README.md create mode 100644 UserRegisterResult/package.json create mode 100644 UserRegisterResult/snapshot.png rename src/pages/User/RegisterResult.js => UserRegisterResult/src/index.js (60%) create mode 100644 UserRegisterResult/src/locales/en-US.js create mode 100644 UserRegisterResult/src/locales/zh-CN.js create mode 100644 UserRegisterResult/src/locales/zh-TW.js rename src/pages/User/RegisterResult.less => UserRegisterResult/src/style.less (100%) create mode 100644 Workplace/.gitignore create mode 100644 Workplace/.umirc.js create mode 100644 Workplace/README.md create mode 100644 Workplace/package.json create mode 100644 Workplace/snapshot.png rename mock/api.js => Workplace/src/_mock.js (54%) rename {src => Workplace/src}/components/EditableLinkGroup/index.js (100%) rename {src => Workplace/src}/components/EditableLinkGroup/index.less (100%) create mode 100644 Workplace/src/components/PageHeaderWrapper/index.js create mode 100644 Workplace/src/components/PageHeaderWrapper/index.less rename src/pages/Dashboard/Workplace.js => Workplace/src/index.js (89%) create mode 100644 Workplace/src/model.js create mode 100644 Workplace/src/service.js rename src/pages/Dashboard/Workplace.less => Workplace/src/style.less (99%) create mode 100644 Workplace/src/utils.less create mode 100644 _scripts/lint-prettier.js rename {scripts => _scripts}/prettier.js (68%) delete mode 100644 appveyor.yml delete mode 100644 config/config.js delete mode 100644 config/plugin.config.js delete mode 100644 config/router.config.js delete mode 100644 docker/docker-compose.dev.yml delete mode 100644 docker/docker-compose.yml delete mode 100644 docker/nginx.conf delete mode 100644 firebase.json delete mode 100644 functions/index.js delete mode 100644 functions/matchMock.js delete mode 100644 functions/package.json delete mode 100644 jest-puppeteer.config.js delete mode 100644 jest.config.js delete mode 100644 mock/geographic.js delete mode 100644 mock/notices.js delete mode 100644 mock/route.js delete mode 100644 mock/user.js delete mode 100644 netlify.toml delete mode 100644 public/favicon.png delete mode 100644 public/icons/icon-128x128.png delete mode 100644 public/icons/icon-192x192.png delete mode 100644 public/icons/icon-512x512.png delete mode 100644 scripts/generateMock.js delete mode 100644 scripts/getPrettierFiles.js delete mode 100644 scripts/lint-prettier.js delete mode 100644 src/app.js delete mode 100644 src/assets/logo.svg delete mode 100644 src/components/Authorized/Authorized.js delete mode 100644 src/components/Authorized/AuthorizedRoute.d.ts delete mode 100644 src/components/Authorized/AuthorizedRoute.js delete mode 100644 src/components/Authorized/CheckPermissions.js delete mode 100644 src/components/Authorized/CheckPermissions.test.js delete mode 100644 src/components/Authorized/PromiseRender.js delete mode 100644 src/components/Authorized/Secured.js delete mode 100644 src/components/Authorized/demo/AuthorizedArray.md delete mode 100644 src/components/Authorized/demo/AuthorizedFunction.md delete mode 100644 src/components/Authorized/demo/basic.md delete mode 100644 src/components/Authorized/demo/secured.md delete mode 100644 src/components/Authorized/index.d.ts delete mode 100644 src/components/Authorized/index.js delete mode 100644 src/components/Authorized/index.md delete mode 100644 src/components/Authorized/renderAuthorize.js delete mode 100644 src/components/AvatarList/AvatarItem.d.ts delete mode 100644 src/components/AvatarList/demo/maxLength.md delete mode 100644 src/components/AvatarList/demo/simple.md delete mode 100644 src/components/AvatarList/index.d.ts delete mode 100644 src/components/AvatarList/index.en-US.md delete mode 100644 src/components/AvatarList/index.js delete mode 100644 src/components/AvatarList/index.less delete mode 100644 src/components/AvatarList/index.test.js delete mode 100644 src/components/AvatarList/index.zh-CN.md delete mode 100644 src/components/Charts/Bar/index.d.ts delete mode 100644 src/components/Charts/Bar/index.js delete mode 100644 src/components/Charts/ChartCard/index.d.ts delete mode 100644 src/components/Charts/ChartCard/index.js delete mode 100644 src/components/Charts/ChartCard/index.less delete mode 100644 src/components/Charts/Field/index.d.ts delete mode 100644 src/components/Charts/Field/index.js delete mode 100644 src/components/Charts/Field/index.less delete mode 100644 src/components/Charts/Gauge/index.d.ts delete mode 100644 src/components/Charts/Gauge/index.js delete mode 100644 src/components/Charts/MiniArea/index.d.ts delete mode 100644 src/components/Charts/MiniArea/index.js delete mode 100644 src/components/Charts/MiniBar/index.d.ts delete mode 100644 src/components/Charts/MiniBar/index.js delete mode 100644 src/components/Charts/MiniProgress/index.d.ts delete mode 100644 src/components/Charts/MiniProgress/index.js delete mode 100644 src/components/Charts/MiniProgress/index.less delete mode 100644 src/components/Charts/Pie/index.d.ts delete mode 100644 src/components/Charts/Pie/index.js delete mode 100644 src/components/Charts/Pie/index.less delete mode 100644 src/components/Charts/Radar/index.d.ts delete mode 100644 src/components/Charts/Radar/index.js delete mode 100644 src/components/Charts/Radar/index.less delete mode 100644 src/components/Charts/TagCloud/index.d.ts delete mode 100644 src/components/Charts/TagCloud/index.js delete mode 100644 src/components/Charts/TagCloud/index.less delete mode 100644 src/components/Charts/TimelineChart/index.d.ts delete mode 100644 src/components/Charts/TimelineChart/index.js delete mode 100644 src/components/Charts/TimelineChart/index.less delete mode 100644 src/components/Charts/WaterWave/index.d.ts delete mode 100644 src/components/Charts/WaterWave/index.js delete mode 100644 src/components/Charts/WaterWave/index.less delete mode 100644 src/components/Charts/autoHeight.js delete mode 100644 src/components/Charts/bizcharts.d.ts delete mode 100644 src/components/Charts/bizcharts.js delete mode 100644 src/components/Charts/demo/bar.md delete mode 100644 src/components/Charts/demo/chart-card.md delete mode 100644 src/components/Charts/demo/gauge.md delete mode 100644 src/components/Charts/demo/mini-area.md delete mode 100644 src/components/Charts/demo/mini-bar.md delete mode 100644 src/components/Charts/demo/mini-pie.md delete mode 100644 src/components/Charts/demo/mini-progress.md delete mode 100644 src/components/Charts/demo/mix.md delete mode 100644 src/components/Charts/demo/pie.md delete mode 100644 src/components/Charts/demo/radar.md delete mode 100644 src/components/Charts/demo/tag-cloud.md delete mode 100644 src/components/Charts/demo/timeline-chart.md delete mode 100644 src/components/Charts/demo/waterwave.md delete mode 100644 src/components/Charts/g2.js delete mode 100644 src/components/Charts/index.d.ts delete mode 100644 src/components/Charts/index.js delete mode 100644 src/components/Charts/index.less delete mode 100644 src/components/Charts/index.md delete mode 100644 src/components/CountDown/demo/simple.md delete mode 100644 src/components/CountDown/index.d.ts delete mode 100644 src/components/CountDown/index.en-US.md delete mode 100644 src/components/CountDown/index.js delete mode 100644 src/components/CountDown/index.zh-CN.md delete mode 100644 src/components/DescriptionList/Description.d.ts delete mode 100644 src/components/DescriptionList/Description.js delete mode 100644 src/components/DescriptionList/DescriptionList.js delete mode 100644 src/components/DescriptionList/demo/basic.md delete mode 100644 src/components/DescriptionList/demo/vertical.md delete mode 100644 src/components/DescriptionList/index.d.ts delete mode 100644 src/components/DescriptionList/index.en-US.md delete mode 100644 src/components/DescriptionList/index.js delete mode 100644 src/components/DescriptionList/index.less delete mode 100644 src/components/DescriptionList/index.zh-CN.md delete mode 100644 src/components/DescriptionList/responsive.js delete mode 100644 src/components/EditableItem/index.js delete mode 100644 src/components/EditableItem/index.less delete mode 100644 src/components/Ellipsis/demo/line.md delete mode 100644 src/components/Ellipsis/demo/number.md delete mode 100644 src/components/Ellipsis/index.d.ts delete mode 100644 src/components/Ellipsis/index.en-US.md delete mode 100644 src/components/Ellipsis/index.js delete mode 100644 src/components/Ellipsis/index.less delete mode 100644 src/components/Ellipsis/index.test.js delete mode 100644 src/components/Ellipsis/index.zh-CN.md delete mode 100644 src/components/Exception/demo/403.md delete mode 100644 src/components/Exception/demo/404.md delete mode 100644 src/components/Exception/demo/500.md delete mode 100644 src/components/Exception/index.d.ts delete mode 100644 src/components/Exception/index.en-US.md delete mode 100644 src/components/Exception/index.js delete mode 100644 src/components/Exception/index.less delete mode 100644 src/components/Exception/index.zh-CN.md delete mode 100644 src/components/Exception/typeConfig.js delete mode 100644 src/components/FooterToolbar/demo/basic.md delete mode 100644 src/components/FooterToolbar/index.d.ts delete mode 100644 src/components/FooterToolbar/index.en-US.md delete mode 100644 src/components/FooterToolbar/index.js delete mode 100644 src/components/FooterToolbar/index.less delete mode 100644 src/components/FooterToolbar/index.zh-CN.md delete mode 100644 src/components/GlobalFooter/demo/basic.md delete mode 100644 src/components/GlobalFooter/index.d.ts delete mode 100644 src/components/GlobalFooter/index.js delete mode 100644 src/components/GlobalFooter/index.less delete mode 100644 src/components/GlobalFooter/index.md delete mode 100644 src/components/GlobalHeader/RightContent.js delete mode 100644 src/components/GlobalHeader/index.js delete mode 100644 src/components/GlobalHeader/index.less delete mode 100644 src/components/HeaderDropdown/index.js delete mode 100644 src/components/HeaderDropdown/index.less delete mode 100644 src/components/HeaderSearch/demo/basic.md delete mode 100644 src/components/HeaderSearch/index.d.ts delete mode 100644 src/components/HeaderSearch/index.en-US.md delete mode 100644 src/components/HeaderSearch/index.js delete mode 100644 src/components/HeaderSearch/index.less delete mode 100644 src/components/HeaderSearch/index.zh-CN.md delete mode 100644 src/components/Login/LoginItem.d.ts delete mode 100644 src/components/Login/LoginItem.js delete mode 100644 src/components/Login/LoginSubmit.js delete mode 100644 src/components/Login/LoginTab.d.ts delete mode 100644 src/components/Login/LoginTab.js delete mode 100644 src/components/Login/demo/basic.md delete mode 100644 src/components/Login/index.d.ts delete mode 100644 src/components/Login/index.en-US.md delete mode 100644 src/components/Login/index.js delete mode 100644 src/components/Login/index.less delete mode 100644 src/components/Login/index.zh-CN.md delete mode 100644 src/components/Login/loginContext.js delete mode 100644 src/components/Login/map.js delete mode 100644 src/components/NoticeIcon/NoticeIconTab.d.ts delete mode 100644 src/components/NoticeIcon/NoticeList.js delete mode 100644 src/components/NoticeIcon/NoticeList.less delete mode 100644 src/components/NoticeIcon/demo/basic.md delete mode 100644 src/components/NoticeIcon/demo/popover.md delete mode 100644 src/components/NoticeIcon/index.d.ts delete mode 100644 src/components/NoticeIcon/index.en-US.md delete mode 100644 src/components/NoticeIcon/index.js delete mode 100644 src/components/NoticeIcon/index.less delete mode 100644 src/components/NoticeIcon/index.zh-CN.md delete mode 100644 src/components/NumberInfo/demo/basic.md delete mode 100644 src/components/NumberInfo/index.d.ts delete mode 100644 src/components/NumberInfo/index.en-US.md delete mode 100644 src/components/NumberInfo/index.js delete mode 100644 src/components/NumberInfo/index.less delete mode 100644 src/components/NumberInfo/index.zh-CN.md delete mode 100644 src/components/PageHeader/breadcrumb.d.ts delete mode 100644 src/components/PageHeader/breadcrumb.js delete mode 100644 src/components/PageHeader/demo/image.md delete mode 100644 src/components/PageHeader/demo/simple.md delete mode 100644 src/components/PageHeader/demo/standard.md delete mode 100644 src/components/PageHeader/demo/structure.md delete mode 100644 src/components/PageHeader/index.d.ts delete mode 100644 src/components/PageHeader/index.js delete mode 100644 src/components/PageHeader/index.less delete mode 100644 src/components/PageHeader/index.md delete mode 100644 src/components/PageHeader/index.test.js delete mode 100644 src/components/PageHeaderWrapper/GridContent.js delete mode 100644 src/components/PageHeaderWrapper/GridContent.less delete mode 100644 src/components/PageHeaderWrapper/index.js delete mode 100644 src/components/Result/demo/classic.md delete mode 100644 src/components/Result/demo/error.md delete mode 100644 src/components/Result/demo/structure.md delete mode 100644 src/components/Result/index.d.ts delete mode 100644 src/components/Result/index.js delete mode 100644 src/components/Result/index.less delete mode 100644 src/components/Result/index.md delete mode 100644 src/components/SelectLang/index.js delete mode 100644 src/components/SelectLang/index.less delete mode 100644 src/components/SettingDrawer/BlockCheckbox.js delete mode 100644 src/components/SettingDrawer/ThemeColor.js delete mode 100644 src/components/SettingDrawer/ThemeColor.less delete mode 100644 src/components/SettingDrawer/index.js delete mode 100644 src/components/SettingDrawer/index.less delete mode 100644 src/components/SiderMenu/BaseMenu.js delete mode 100644 src/components/SiderMenu/SiderMenu.js delete mode 100644 src/components/SiderMenu/SiderMenu.test.js delete mode 100644 src/components/SiderMenu/SiderMenuUtils.js delete mode 100644 src/components/SiderMenu/index.js delete mode 100644 src/components/SiderMenu/index.less delete mode 100644 src/components/TagSelect/TagSelectOption.d.ts delete mode 100644 src/components/TagSelect/demo/controlled.md delete mode 100644 src/components/TagSelect/demo/expandable.md delete mode 100644 src/components/TagSelect/demo/simple.md delete mode 100644 src/components/TagSelect/index.d.ts delete mode 100644 src/components/TagSelect/index.js delete mode 100644 src/components/TagSelect/index.less delete mode 100644 src/components/TagSelect/index.md delete mode 100644 src/components/TopNavHeader/index.js delete mode 100644 src/components/TopNavHeader/index.less delete mode 100644 src/components/Trend/demo/basic.md delete mode 100644 src/components/Trend/demo/reverse.md delete mode 100644 src/components/Trend/index.d.ts delete mode 100644 src/components/Trend/index.js delete mode 100644 src/components/Trend/index.less delete mode 100644 src/components/Trend/index.md delete mode 100644 src/components/_utils/pathTools.js delete mode 100644 src/components/_utils/pathTools.test.js delete mode 100644 src/defaultSettings.js delete mode 100644 src/e2e/baseLayout.e2e.js delete mode 100644 src/e2e/home.e2e.js delete mode 100644 src/e2e/login.e2e.js delete mode 100644 src/e2e/topMenu.e2e.js delete mode 100644 src/e2e/userLayout.e2e.js delete mode 100644 src/global.js delete mode 100644 src/global.less delete mode 100644 src/layouts/BasicLayout.js delete mode 100644 src/layouts/BasicLayout.less delete mode 100644 src/layouts/BlankLayout.js delete mode 100644 src/layouts/Footer.js delete mode 100644 src/layouts/Header.js delete mode 100644 src/layouts/Header.less delete mode 100644 src/layouts/MenuContext.js delete mode 100644 src/layouts/UserLayout.js delete mode 100644 src/layouts/UserLayout.less delete mode 100644 src/locales/en-US.js delete mode 100644 src/locales/en-US/analysis.js delete mode 100644 src/locales/en-US/exception.js delete mode 100644 src/locales/en-US/form.js delete mode 100644 src/locales/en-US/globalHeader.js delete mode 100644 src/locales/en-US/login.js delete mode 100644 src/locales/en-US/menu.js delete mode 100644 src/locales/en-US/monitor.js delete mode 100644 src/locales/en-US/pwa.js delete mode 100644 src/locales/en-US/result.js delete mode 100644 src/locales/en-US/settingDrawer.js delete mode 100644 src/locales/en-US/settings.js delete mode 100644 src/locales/pt-BR.js delete mode 100644 src/locales/pt-BR/analysis.js delete mode 100644 src/locales/pt-BR/exception.js delete mode 100644 src/locales/pt-BR/form.js delete mode 100644 src/locales/pt-BR/globalHeader.js delete mode 100644 src/locales/pt-BR/login.js delete mode 100644 src/locales/pt-BR/menu.js delete mode 100644 src/locales/pt-BR/monitor.js delete mode 100644 src/locales/pt-BR/pwa.js delete mode 100644 src/locales/pt-BR/result.js delete mode 100644 src/locales/pt-BR/settingDrawer.js delete mode 100644 src/locales/pt-BR/settings.js delete mode 100644 src/locales/zh-CN.js delete mode 100644 src/locales/zh-CN/analysis.js delete mode 100644 src/locales/zh-CN/exception.js delete mode 100644 src/locales/zh-CN/form.js delete mode 100644 src/locales/zh-CN/globalHeader.js delete mode 100644 src/locales/zh-CN/login.js delete mode 100644 src/locales/zh-CN/menu.js delete mode 100644 src/locales/zh-CN/monitor.js delete mode 100644 src/locales/zh-CN/pwa.js delete mode 100644 src/locales/zh-CN/result.js delete mode 100644 src/locales/zh-CN/settingDrawer.js delete mode 100644 src/locales/zh-CN/settings.js delete mode 100644 src/locales/zh-TW.js delete mode 100644 src/locales/zh-TW/analysis.js delete mode 100644 src/locales/zh-TW/exception.js delete mode 100644 src/locales/zh-TW/form.js delete mode 100644 src/locales/zh-TW/globalHeader.js delete mode 100644 src/locales/zh-TW/login.js delete mode 100644 src/locales/zh-TW/menu.js delete mode 100644 src/locales/zh-TW/monitor.js delete mode 100644 src/locales/zh-TW/pwa.js delete mode 100644 src/locales/zh-TW/result.js delete mode 100644 src/locales/zh-TW/settingDrawer.js delete mode 100644 src/locales/zh-TW/settings.js delete mode 100644 src/manifest.json delete mode 100644 src/models/global.js delete mode 100644 src/models/menu.js delete mode 100644 src/models/project.js delete mode 100644 src/models/setting.js delete mode 100644 src/pages/404.js delete mode 100644 src/pages/Account/Center/Applications.js delete mode 100644 src/pages/Account/Center/Articles.js delete mode 100644 src/pages/Account/Center/Articles.less delete mode 100644 src/pages/Account/Center/Center.js delete mode 100644 src/pages/Account/Center/Projects.js delete mode 100644 src/pages/Account/Settings/Info.js delete mode 100644 src/pages/Authorized.js delete mode 100755 src/pages/Dashboard/ProportionSales.js delete mode 100644 src/pages/Exception/403.js delete mode 100644 src/pages/Exception/404.js delete mode 100644 src/pages/Exception/500.js delete mode 100644 src/pages/Exception/TriggerException.js delete mode 100644 src/pages/Exception/models/error.js delete mode 100644 src/pages/Exception/style.less delete mode 100644 src/pages/Forms/StepForm/index.js delete mode 100644 src/pages/List/Applications.js delete mode 100644 src/pages/List/List.js delete mode 100644 src/pages/List/Projects.js delete mode 100644 src/pages/Result/Success.test.js delete mode 100644 src/pages/document.ejs delete mode 100644 src/service-worker.js delete mode 100644 src/services/api.js delete mode 100644 src/services/error.js delete mode 100644 src/services/geographic.js delete mode 100644 src/services/user.js delete mode 100644 src/utils/authority.test.js delete mode 100644 src/utils/request.js delete mode 100644 src/utils/utils.js delete mode 100644 src/utils/utils.test.js delete mode 100644 tests/run-tests.js diff --git a/AccountCenter/.gitignore b/AccountCenter/.gitignore new file mode 100644 index 00000000..8ce76bc4 --- /dev/null +++ b/AccountCenter/.gitignore @@ -0,0 +1,7 @@ +/yarn.lock +/package-lock.json +/dist +/node_modules + +.umi +.umi-production diff --git a/AccountCenter/.umirc.js b/AccountCenter/.umirc.js new file mode 100644 index 00000000..6f5bf056 --- /dev/null +++ b/AccountCenter/.umirc.js @@ -0,0 +1,13 @@ +export default { + plugins: [ + ['umi-plugin-block-dev', { layout: 'ant-design-pro' }], + [ + 'umi-plugin-react', + { + dva: true, + locale: true, + antd: true, + }, + ], + ], +}; diff --git a/AccountCenter/README.md b/AccountCenter/README.md new file mode 100644 index 00000000..ddecd322 --- /dev/null +++ b/AccountCenter/README.md @@ -0,0 +1,17 @@ +# @umi-blocks/ant-design-pro/accountcenter + +AccountCenter + +## Usage + +```sh +umi block add ant-design-pro/AccountCenter +``` + +## SNAPSHOT + +![SNAPSHOT](./snapshot.png) + +## LICENSE + +MIT diff --git a/AccountCenter/package.json b/AccountCenter/package.json new file mode 100644 index 00000000..d8cd626e --- /dev/null +++ b/AccountCenter/package.json @@ -0,0 +1,25 @@ +{ + "name": "@umi-block/account-center", + "version": "0.0.1", + "description": "AccountCenter", + "main": "src/index.js", + "scripts": { + "dev": "umi dev" + }, + "repository": { + "type": "git", + "url": "https://github.com/umijs/umi-blocks/ant-design-pro/accountcenter" + }, + "dependencies": { + "antd": "^3.10.9", + "dva": "^2.4.0", + "react": "^16.6.3", + "umi-request": "^1.0.0" + }, + "devDependencies": { + "umi": "^2.3.0-beta.1", + "umi-plugin-react": "^1.3.0-beta.1", + "umi-plugin-block-dev": "^1.0.0" + }, + "license": "ISC" +} diff --git a/AccountCenter/snapshot.png b/AccountCenter/snapshot.png new file mode 100644 index 0000000000000000000000000000000000000000..a5a4515c4af4dde29296e704f1f4804ffe686fca GIT binary patch literal 88254 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
    ;YhagZ+0I~kp^jb6@Z*@B z_8JS+P;Lei{?QM&?ZOiIQhhLs>I83}1&&6H2|6B@uz=R_c zi)A;W3v8*>UfO94b9Phjpo%w~oZ2do!c;E~FV#jd@aa*hX$a3-TNAVKhD|7adNcOz ztiQI!ps3-+0NEC2QBrI3Lqn!lSa5x=E+f@}xJmT71!xwx$xaI_Ylhs2koE(>PP7 z;ZO--OckBrF-5J+l09U}bv@;u7Nk7xt#29}jNKkY+EKllL|U^gcyl(8y1OH(bdtRwI-Jq&? zJsbotJ?=!Ra2p;@0p)V%TcaL@6^D9yNq>oyuS-wJGo6sLbaZ%`x|D1KaQ?GU=6!m*?skNgg*mmX!mA zszCh_!_-GLc}4@?%ih?zvrTw|djAisoql8wV)VJI$#33z!CUKGD%}lHxq3pzjgD@; zKbyUSO~n3A%_98W!4RaO8~WW!iR{pKrui>TW$|+<5s2DPpJF`?uAsv~ zTcv3%3VPLF>BAqbe^6ERe)IK&50hE<7Oj_la@48yIlmUJyuu8SKHf1~`i1cF9Ch<^|9R~)rSTS+<#pJ5 z2D{h<)gLKVn9sE57B-NeuVhLmlGN;WcXxk!3k)s-^zb1_BbWUEE&b)rHHihM=BI}X zru&FMxfSK;JcFwm?lAmMeX?@k;fRw#kMG1o-*wZXAD!sM*61$jn z8;#mStRn7CtB;P8%K~^-yP3ym}rOiiAk^9Kc%VL6snTMJK z@5M2PIxBJ~B30NgiAj^qq+;p>!IeaZA1~>_HrwAiY1{VXoZY!Y>U4ua2>h3)!Ln== z&Fy3w{$NJw%|8uDL5xFF?TNWLX;oEKBL!s}Pc)n9+%xc&)c z8c8L}Y{r5UR^h08WkDd1VUgPro7}ak!~%I+B#DHIrGcW6iNU-!z%6f5aQBC?2swq4 zz_o~gk!kxX;HQQLxhhsg-|AB9y+9K42HJvH{z4Dng(_`nKT7(p529AdK zD|$*Sz>O;J>;zgpy_&75G4Z|{F_vAk`?*O-s3= z6c4o6CF1WcDO#J{TQC#cC6&4c%y0xMZ2{0y=}5{N|MXq1sf3<6z0XA``Rqfmn(d-E z01M06DBxkdSY7I>pqn%Qg)z2;MScf>?FaY)nN|%M@K~M0!0V)q+^o)(81x4gJdA-+ zMB_)OUW6mn8mKywm(_rHf<(|S6u2Da3^yRZ&#so7&ImEYeiU>;6cgZC#$Jn7W4#z0 zUtOB$iW6B38(SN-q67s*OnU3(Cg#x}#Jc+=<_!Stw6eL2%a?YJ#^Ikef@kOw{~6Vg z@a1jeLoiI78{k3z>eVxL_U|h_(Kcr*(ePHvYZhCKkxVHJ6uZXjqe90;e_9r=+PT02 zxbuc`LyhlNF2*ZWjzlX$?hlSxaV@+gZ+cJc>NR@u5O)TO`>GhpYGRoOPObzgRVJ7W zYexKS^2i6q<-SdP*NJ6|Kf*X@v5=|d3OTaRWZ4Z?h@3_MVyw!Q+On@6U~q0^Itc0K z(3!>%y0Sw68NJRlmrRAXlsV2$D$UyB^^hV7M{l|95rA!0^5o%}exmBHbS}tTJZpJ>qLlitWklpjmV@ zM^(tkOw}F&R0$z@I#zR6L;uD;uP`?`B1~F@< zO_}1(sQPhzg_rAFBWERtnLO~JhF6cE;FB!k$8n_*IF2zaHaq}U^D0Q8JU*c`@%HuL z$5yN8%_GAbJ1OU3?Al$neDKi8OKw-a=%c8_?VRMP1y2E?Zj{HxLt(;+ZJ5b8t$CE>Lt~B`-jy!9XGI|u zPr24sL<9qgmYNLN_c$DNev)^rRc$^*BFg5-%d)Ib;xQyc;8i^69UmG*@)|dY83nM* zPW$%F7sC8qU2bHb!g+id5BNeJJbF39<4!8(;t<#DC^QTIiU^wDy*>y8Pmslen}~e$ z^np#p{De2#rUy;Rv|;Li>(36g5WiJ&OGDdfqWhF?Ta!!I5xUpB!19^>-4o%OrO9o( zM&ZI>1W=(wxcNRqgb^l8bN)L>@A04p12d_q;G+JIv>=``QV7^ROSBNNP+ z+;ZAp`R?o~2tFv50Ri_*y4BQh{zEz5LhYXS5&QEhryb;L-JHLgb{fYByH=!l$dnW#gq91F! z)S6b=OXyWD!8~EUuU}U>*CxZ+<<1#irdk6P(?!|7>wYDI(6;q_j(qhnc+7nl#M!s4h+U`HB`TOM zW2Z~B@UxExZ#ofb zTDcxoe*QNF4D3$_ds19}sx3#;$PVD$R(Ar2_*t_V^`3VZ@AAsRSlNPH8yR6?5fK{^+mq%RCKaTo*k>PjJA&DXSz24D%r(%3K7J(Oh{vDCLSl5& zrRI5b#BE!k#(39te8fO=$$A3ViU9w_YirXz!*nPLQxE?Sdv6^T_1FE63P_hIDJ6o0 zNOvQMh=3r{oio7D-H1pd-5m-DLk^t-LpLJb-3;CF8$ZwUx$FB;p5OiBuDkA9zx(_% z3*PWP=gdC)?6dc4mj+u=>4(m42YnvNypM<~^$~r01pJ(zP>Mz5&t<88d?+M^^A7q% z^PIw4dwatgK{n@wQp=$`0xxAtCyfT0k5jQ$n}kB1HFYhF-HN%NQd6q9&U;@`F5+&# z>I_7izMqVQ6t7Rd_kc-}T=|usstu}UrUv^LC0YDX2W`&X@+=fM)kW-&& zav`D24CdZ-{;Pl9uQk;lvmq-ec~o}D6y?ktGvZAy&`u(SN?%C!eyMAMn`(_b#3c@0 z-6>jy&l@_4CSyObpneIbQLgU zY4G%7ZGU8@z_Bk}c9y0;Xh1^ipYHqlF5$gexQY~`vPWyJgn9%8(a-g^8*>p+3lTxk zvA~m`U;8Ev#*53&sWN#=7OD+|1qzDwFQ!KW6w+7m!t*& zqRRCJoG+y>^HPJb<2X1J6&x`K==(eJMd{jK77q7&;tv27=Vu&!mV^VwE8rRM{pl1- zt!iP`6rg>|=T^cfHT}gJ%Z z7pal)ja{i0+kfD-#GQkb?wX&#>xhQ7QXM|lU|oE{x$SF(rh3pExgSb7xTgqSQz(uq z^N@`mCBLP(oPSPL{oUZ@mv;AoqaM5>piJ8AnTTW9vdW9PmEL119TI%%3U+3=oVRd(absH{RjY$ft_vLx{v`uK4_D=+-T-ZxkL z7b%^C38rYd1Ny5EqbJ0Yw!H(i3j_9?u}bhahi&ZUr}mMFEgcR9H_12b*~14mB(J`r zvb#SMvYLRlWUpRN1Z*l}~gBYv_1iK5GkT2O)`+|TsQO-3SK*MYI z?UoB1qy4DN&pe_6gO5OgN46<&qwSA#YG?$(-3n&?=j1$=XZBC{b9rF zKOwqbyT@NAK8CZMFFRglOxe%8Jval!z|U0(w-FVZ|IF;w5q2y3#(2d!RPEvN}Xz%FPQ}f-rS2VEQW!8 z4f&m)ZJ`?=MLVb_TNaiZp3#W!ey?6i*WlXP5{Bl>isfsdg4UM`Vsx@(Dr<-1tR;AR zv!SRck58t^b$I*ag&^r<)sR8q#eU`#3U}Hw5(@1LW{&S)Y}p;48(bIz(}D3VRoDx` z{%ykj9`z@8pRxPc4t>xtW>UdpD>Nh6I)VTBMjd#%1SV#sh9rb#(Arz$ar>BDg@}IE z+}8$5Eascy0y3HK1)rdC_>GgLi$+tkX~-Y-8dy{U1`A#4y>gP_oxu+)=~$lf0f-0Y zM7YfMtxX%muvfXayN*?0dD_%BHrExre*568nT#HF4jW@26Z~xuKgAQ~3W(4aYhrqd1^)W)|zbqxpbCN+$oF<#$M z{Q$9prZO2IG^b2n|JixHt`U2>a3J4yGsiK_F7JWMSVHGar7)HID$#3Ej(CpJ$lM9# z5fP-v^)TLfp{qa=4+BbC>cw`@<4-Jy<4CFlp1~41rSzU2OHYa$ANq2fn!LYxk9Bz4 z*7YfUz(jqnR`7BDCo8m*$%|+VE(dWr-M?c2WXCI3HFU>;g@WYav^MWxG;2qe<2(4x zLR$&9>ii+zoN?=EHhKE!1$@NNR#g7YOT&*__guY89_?zmwV1bm*2VM3#YrGitS)|_ zfDcj-K%djLeUC?Nn*KD@5H?$KxX-nv zUL*Fv#+4DrmYvon4NxZN1C6Iz10nCCO4r^sAQhegF)ol7674Go`E zFmHDfC3MK1^{z`Ek70s8X+SD+5XS==01S?tlyzUiTed_ z5C(~O9U?0OMB>Er{GXvc86PmXHI^VBjx_E-2L8GV#p8((_5MuQ3eoQDQBF5VhRD5l zY%jeBC}AO{%u~}^QAueDia_2%{*O6 z$C90rU4Et4?YTEc*HlSVy^?odn!?*XRX)AsTo-h$lQ{0#4FPEPMuC7sWupsT$x^B$ z?pl)W+c4KHZ}*$M=f%X;Ti)p>D=tXGxy9{d_xN}2{RcI_{2SE7azZ_$aB@;J&HKg` z47C~sYv7QwL#wtrBWdgRTClGWpgjWueTs;PfHJL}XzVP^Jd<^eH3Ls@Cw40C5$4w1h(226};}1DprMtcF~Bg9o^w8_u6{AFV-}ijFlYjyn9J z#WP3-^1s*z@jk9yV;z?>AJVsrT3X1K=q`*X8tscKKi@uYH;xnGB?>6qukIG>TT-zn z9e$jT4pY&G~vd=?>v-sl1J#%I2kJZ$DHdA z`It45K8&;PehEovEZtoz2^g=|4`mAkAyPeF@9UYmEX|GE{!BH9Ym~K{#Kz4<^X}1Z zO`D%{oC6k)cbJe+j+ zb7s|mNuOA(et4OYeh1Z)@bV>g%2(1-=x;Yg85+i}Hz5tinlR0Wf#uk$+);xgELV9)qhcmv9`%1V# zz3m-nlcRTbO920-YeRtf@ zQB+6Zh^yw*g~)~1iUQ@@k*QqZoIS#)DiIC*2Ni>!XV>UOF8Isla2VW(0r4=$ZM z8WZ5A$Jc^CV5bmHYY4;lifsvFCOJGiMU&)1$!>=s3W*fBN)k3t#XfhIbFh$+g6?5ZVn7((iv8fKPB1W1cCDT-m*$>lL=12 zYE5D~N4hUpd@0n;SsPSo9=&IZo~CdD*_!d)o~VTkx$jcBECZfOiV)sp5-xSW#Az^- z^DOi?SoA;_1#tOgr$23EOZevZ!gE`Lg5%~Sm6ZV!XKm~u2kYezKfEV*LAB5hWVd+C zRcpO4=05Wk7qyWiv8zGPWGp?0W7ch&@2tWRfSDZs;@NuURBa>JXsG|f%Aldx`n=tQ zKdJWzh+ksv?qFS3fAM5=r=g)CkCO?YvYMJb43}@Oo4Hs&RwMa1Z+pghZpU5uB!sOo zk4-Gy2fx;nHKg!OQ7%vGgHYyq-_uIFJ!R69w^vB&O%GLXOtFW(1gNF)Z+olP$>||9 zB2jZc3#EthE5&X<#?)**L9;>Pc$CO98g}eb7#rsrMzPG*!Y($`f-uPUB>KlMI@B7d z*Umq|9;ATNF74wi%K=>)j>6Eg6(i5SHI|fjuF=OH_{4&R+K#0yqIJk``(4 z0rswRM`5e0OprI8tl`Z@W-edH@(Xuu$I(?Sj4gB`G!FXTjwW)cJGsw*TQ(mOKhu=8 zzPr`hLsO6sFa9>Tjl8ICSMcEQ@Vwu-5jK=9eLgYZwMu?!SvAuhNI>g>{jRm61vKj`Kzx4=Y(3<_y-06-3W;CU5s)>)sm*HW_C z>9O0A$=Eci#l#^JY8$#ocwWD5WdFE2dOIfQeefo60iRfx(a>U_$LIk~ZaQeio9AXR zN{InIoZpuB;xfTk`UFb!GQ8qufhbLc!xyz{KSqTVr-3;{MT}JLJX3QETB~w7q*d!(sH;3f5oNQ`)2F4!u2fyIE*;p_~yzage!cT7u z{fJb5b8+KTGeael-so9!S~+%myy1>Iq}IXrSVFz{4dD6=kma6`QbLuE zTk&WHLNf?*C^^oqT`+NYt&nW}qS!j1^!8_mw<%*nAqJTim8(ujPEhXtSJ-fE7V_Qq zRtPQP_DhEG{51*v~mof`6 z!)f~g4(nOr7O=x6$Wj-J3!793-U!v&^r-OLcTPdw%1bRLts}DF;UeFGTC28n*5E(_ z=4~mVu4Sy%Sg5Cw5-B)K&=IQJnjD$&5nnRGkuyXi0$vo5N3P|`o7*hH+#OTKJwo`R z-=vG`%!3I<3}ux>WdoqgljH(c1KD=G_I{luYT5a9Ks(|1%H=k3AIb)EP#Bi-Pg6F& zemw*yJa2J7X`a2J`Jyn$cK0?R)C()bHU-m2`tM!Cz0*|+RL{{I2SiTyzF2!KZQ<{o zA%S_`QHOuI2S>_b5L+oYq&eg|u$%V@ZNA|(m&208DvdMSvrLmno5aK~q*~CLIfhOp zcU^QgofTN$62VB@sd%mPg=SY;_UF6(p+#to$S3s?0iJdaGtWyMI}8tM?MJ!YD8{OZ)8u7OC~pULdS5c7iee)l8%LeEeA;x~ni()-|?iM#TO(6>b0Rd%Y z<%pOVhh|N_273QKF{xhnX-SnT_H8F}mj?X;a$rT!;nKs4BWHbV;kTLw65)p_nyQvc zi_d9<+lO36we*!o5PH7~0i_9k%$aE4(ld|O)LHK2>YhAqQ{;U(UDOi;6SH~8>BEN)OUxmNj0vqOtG+nToAWh zPzmP|>heLXj_XRSw$p?Og_sw@^z<}oa6fHl4+ZqROW}X1q7ng;Fqmgkp&ba~rL{83A>RY81q&AT<@e+dZw8D|gCG|M z#~qu+Bi4wYK*v*$<9S3ukam+V#WkEgt!1UWzdnRn)Ibo#N6*Yb6))n$x~R7nFj@iO z-Ad9J>#v<1b*$pua?=`{sbvFS!Y09&Ewy6c!kWvxnzGSZt-^+IO?T^x6VVI7Q&kW= z`(KY5`x{0kFY_w?dQ|LgeQqUqP5XxhVk+tLV4%y+TNCZoQF(>Iu=!gAz6SlqtmxED zJ*`)Z{P?#Pf=HOEufU1SXVGAam#C_1F8*qGx2WcLQv1GAI!x zODa%mlm3kD`D+4kS%k3C{O|O43ithe)U+_TY|Tx{;hOV;xsUM;<`&gGKJ zxasOXbJjk1hxYRg)j9IkyB zRT3&D%ICK`n$~TYrm<)5ge&m&^byQ+Efu`op;P4uJWP6FH&*>!TY%zu=7I6E(&${S ztNe)JO=X|ERgU|DWxovi*pXOeRZY6slmpctGoz`c8|1FLkhitYr&9J_#oce8!!FNZ zg7evYe21!*EL9!Vt{z=a-&Ci5N4eN9a17`wr0kBNuGZl8CZGv5@sMzSYMqFzhB`79 zS^VkZZV>;8kKiw%c5w0Cl0d|gge0ddp?NN4I`7Nv_-@+jx%HH} zT$_LN_;g_Osl?sRXFi`kCUEz1QZ89r2f+C29*(l z^#j2leqx`G;!~mz$tP0_E>0KLi8Gu?r1PWCoK~cT_l;RGF(a$JlY4w7H3KQT$KTw- z$73-)yvJ2qXQT8RQo>H>#@mCv^wm3urCB1;=-LTq=aZ)w;Th-G;V?$7-yuSexeaKZXI2&;b&=Dzb zM9`e_tvJ`V;LjCB;BPVyL2yXD@GkOc#R=V%*Czg!gjY#S`n48@ecEi>r2tpWK6>$C zO>vE`a@rX-*CVTy#MA3%GsPcI_41a1O)gKme1BbIViYND%2wj{QS|tvLq_YTgU(JQ(GIAlEV)E5J zq~E*gzFnAzq_)#(VRa(DC6V?POqdYvxD`zt%uqZRfZv|5qjZGQZ4Z0CXyi&}vNqn^ zS>LtUq%Er=$ae+vf4xB!`xZAb(i4v2R*Lg>(4<($ze7!ptE5fyY zSLkz%g7-hQ)D$!xTbhHa4oKp~pb+gk{KV#gT^xg(VzG~dAXj!G-Pwc8aA7_m2MuP= z+0B!Ns-ox_-_4>sNh}^Ao{Z-7az}zr*-dQmn8jv}YiUCTH{D&~0`L1(K5+ERi>0CdczZfJ#`XhBw%)9gQGFX6& z@P@}+?GHoj-!|2t59;I*r4v#>c;$58XX)I%j;8*MIwG*6P#4!N;lSpkri6smY2ib6 z%hLz%yu6}x)s8=HhM$d%W7ex^k>@RjrqhJ3#EKO%RMyR!IKO86Wh73@i^EGmd~Q6y z#YASnu*+rj)y~a0+88d_Jvvp6#bX&n*OZ@qKCTVct-LVw{Oj~T`{kMJ>dAlkTL5GA z6J*4-pc9c+@bDLBq^cvN1Vf|CX6^r^r`vYL^xv@ni15yk7lU5#lDbZm56Az>CJg;$ z6E3NINWZ%>TrC)3_OZH~@v#5Kj{h3Zr=JmF*>UOe9BbSeK$_9>t0ZAryei6{C7=Hi zv;Up`{}J(RG_;&+v$8%R68eyf$7C%nEw%XOGN-T+))W9@yArGRBU?IL_4runVB118 zwXmtMcA?*9@I3SsXT%Iq=Il3neLjllF9b%R@2T4)>+{bZU83%KM5_ur~SX*w#o8L-`5<^T;6XL#@7;B_j{yi3aVz&yiBR005Rw%mjX9EZA zd}PbV;~L@3np|7usTxquGH`#TPJUWyUoPbM)Z%nz;-t!{9#|lK`6pM$=l_y4qe5F? z4gSK(d@aYHX6UZWy~EwCuYFu|0QvG5yWTu0`)Bl&<)NB~UQPA~<&$~5`)&h2_vtAy zugWi|h10~({jP-3v$1!Fr^ov<#ehcD^VhgmgSDkeTi$ydqo<=3!$&EHS2L6QX~1K_ zKe5Zf6;#c{w2DGWGhMVGHX)ypN3`Y#h3m&tQv+L}oNlRDpS zqBc1Xoa@^`#k^N5x8I61os|LU?5A%#<|eBsOk^yRzXUBlro@b5Az* zuZY8o#r6%o1>$NSm@7;@Z$b>J<_sxjE!9}_~>$JawSr$;A%RcH7oBdj0R96GX8LRFZ+Bq7g<6{cq z3#)Ws73x_l8kVw7ow4!R?pRw@hGTwMpdP63WsaUpTi>H$g zg<_zD?JyY4It7M20SBb!8`aEz3hfonGd2AV#-KO(%Gtu-TFHm^sQo3@jnhZVw3n^n z_BQk121u`4Ek8T^9yD34w9(pzK7NRlNf27i6I|{p^Yw+^Kwbe<3q?6bGBl_I^w6p= z2gSk%RVcrK@b<*0{km0m&gX~N+B|6$GVD2KuLD-$oag(dYB7&56}L-tKQtXGv+miH z@In~#`kv=sgg$ee#0VY4cnH8T>Tj8-9!^^=qKQo4d0;zZxp(yNAl&2<2h5qBjFkC+ zM>y?=fSIv!4wtnBPE35sak#-%N2t%|m^$?vb4=$j%5`d?2Zu8ot#j$Gf9w;MMZX@2 zm%M+Co35xh$9gbk&R3^5+y9!Gq1P*N0KFyhT4+Kqp4|VQOc1$e>KolOd5I?8T|H)h zYGRn#0?)?eZDyd0gjW>=XuufsW)%i#^7@>I~AeO{y0+;@?zYS0Jz$hs6HoH?Kt(6RBgB&;;x z*g*GUczmYDf}b+6Kl_UC%UQpFF2W z%b(fyBn$NYp%6?iFTm;6&c1k&P|Nj{l+>uCl-T@qrR4O&A?lLcB@w#(eaT}X^<0Kd zD|}4E(B(xsb)OKld)s&sTo34{f8AFK=t30P|Jmicf%yf-xaDccfk@dtOC5iX58<7X z-&oMDZ2wl`wabVz*IUjxt6p2G0?9C}4&z%i2PE>E~|*r>qhIKP2QELcNH28Pu>lhm&Ot&=&BoAL!ewQF zGYhK`J_vcLH1_oZKcB;v#A?1xO@6USC@e1+#viWs(v+XJy<_3VUbN^#V}0z8tEY(G zf@QY{N^--k#6+^%a;@ih4Y6wzf!ugX6mAT@5+bkgNIw^rB}h|uL(RUy=CMsE`En1` ze*~(Iy6)pK&qTkRJba01p7A~7$%r1IwA+cWAu?Gu5BU!&e}g{orEl~Z1E*`XH&^9M z3p7@0@rAxI)~tCTDQ7T2Oc|f?^AAzGtzMfCRFbEC;*Req^$V4Hu&(H%^E1yq@so^K zJH^>PmZ1eJ>Ee@t#B&mS%>RIvh$qUsV_qWq1nK2vSKdgyq~sQQ&(MpnkyV3po*i;I%npAv@| zjNNNhKHIk@`pPRZdYVrJ>|#K*s)x_v`JSHEjr?Y7ge4fAWB|6pu`jR4Z2v*o;bW@x zYE-@OqYftgU85Ul(e!4g?X5L)NeEcMB>Cw0(+xKh8{1Rhf>XDVoo#q<2hrx!1HB&_ zE;<~L_;K}gBKgta9DS1VM}>R=6jtM!{IAmJV zh~)9>oGkpxA`}SI_bE6j$JqZMo8l2X6 zxX*8RA9|I2dN1OWhUg%2%ShqfwIXZL8d@7IZasa1LYRy>Ex?<99;Ore!<^0JWP>gO z=5$F1cue)SK}FfMo2i(?1J3k<&zHK`|HswXo1V$H)09lpx3KrGepb5}sR=C6Yx;~y z&EhZzf=t^y%kRCWpLc>7-1C*uAbWLG3EB2IOpRMP6qg=Botsl4DAF32j0OwpA#3kL$9dHzfS4 zL<|1fxpxAqo;u%kq-z2jkR7Os^yoEl$>FeZyL`RNj78%rr(HVJ6Gt81$m?jA)rR|N z77v|XYo|jSRQ0uVf)8)eY~kFuy+fZHzZp|BeW{~ITl`VGK=2xaJi)W+*u@nKpD*|c zEg30#_zP``7KI;Vxg|yCJy}YB?jGu261H_O@yh)EGEjJ!o!k4OJwppvCTz*lMmXOH zqzOMp&9>%D*4?AlGN$tpSx};>6{#kY_AtFgoJhEKy@gTgBwgb;bft0^16 z`I2IiX$CAhK*T?FJY)axOgpF`G4pQlYvqYym~s#0?-Gd9K2KY&M%Gh5SzgZQz~4go z%1)6J5S9JyYA0Ihtr$~g`Ohy9Ryz!wvh`!!ghn#Gl>{DM!(5Yxm$z{xO}!z^#UBG( zNk_k0WrJDAIdxDifP%KF;%YkGqq)veN!;CfI`H=|>S0~}&YnTxP2jv3n6xa@^|+tV zx~+EB>r%5}LW>bAES*@N-SUatW5%^g5vdr>a9p*xgUKHP78SFeytevFq7-a~smwl~ zn+wx1Nk?I@*)gs+-Mv+dPjZaEme_V#tb)hiZ6?)isxDfZ()Z$#+ojD*pRQd1m3X(! zr>ryIPhXy4EuO`(In0!A=w@{XyXb3RV#m`jktVjZP*WS8#EI{j)3zh(80q>?22#2+ ze4uA|U?j3T<)3^BBhe^h3MC4%y-{^UgIRAm zL;1~YLQ0U!)f9I_jK-SAE&h(G@><)D&%x5SWn#-GOdOa?qYhboUrXnl^=)YH3V4M2 zJzQ7!(TRTVs^H3WVZ>T&!f=rNwGiiRm$BP>;-KV1CQv8Y6;S1+L`y1NC}l_W{-_@E z(k^LVm2l$qrw{!3WiFC_@EmTV?Ed07XRZ=K*AJ=4zVs!zo+u%Bk3D?(a54_pSU9QkfUmj6Oz4|q_(ID&-I zx!wir_b%k=x!Gv7{{yBxe9QBSvlZ^(-I^&e$ue+4s{mQ=+jJR=0rr%1iS2RYoW{nK zigQW>6Xj@_`{+UEuux+B{*&hD4U6lJ$VA@Q(4Ta6_~`DwJS*k-c`?_Q_8Q3vZwyzx zo))FI42QQya~_H_?nR2^w1O(Tb*Kv9L1Kc$YGHO@UOJ_j zie_uasm*xj53#vez@iL8Y_F{!_qmoh2GXm z;ib1+toU|no?(51tt|;)MWW!9(wNo21xa*LTXN*HZC0Av{nN$Xy?Z0+`(-!T-_Y|8 zuyr08m{B%?`nKUvUd^zEk zaw&%pumgGz`Pud+e%KZ=TKBnVy_b&{{n~qRn|lX(7AhW)V&L3wkjleOyH2Sy3Lk{r zf7Pd-;yi?kx7A-qz2=f-n~5?RM;uX7)HZQ33UivQ+wFJi_8a%kd9W|x=SY&3-YB>^ zyYDi3(a!*eJjYETITHp+3jPUfATV^A!5nxA0#VJ($yqfF&6XW8Bhyd?PO+*C^sf$2 zT)047?eThEuHQAQ+@|9qO&lwCl#c&}$O7x&{gq7> zOCnk#lWc#$Vb#j0liVeB2i?p9URV5xP}!eyb%0%d5FpCL=wGYg`M*}NV{wT9Ux5V* z{{i%56*QnxQ&!$XC_1H{QO%Qt9C zExGA={tQj|E9%MT9W&z9VO>GTySwFPF#mES1gohS-JN{7UjECEvGeUi$DfGruT81V zLijO?TvT}I|4{jU=@tL)PmjnX63Gh=#%erU#IDz6tEi~3oVgk^XQQLLk6?~iHC-7* zNRpzBdK&8Lq<8@+J=f6+qBO$7)6NaG&Tw75s=H9TCq7{>9xMuI z=%y!09hK|+Y($fYnQd_YRYu3ik3H24g8UT$^*?0RuU$<7^*^3;JlRj%st{14-Z~2x zy$D1Ep^|HZ#rtZ}a?E}}fCKiFVPWx5DI!Lpm4>|I0=wTSyTZE$nc z<(OaYif$y+Mx+7&DWuiN;AH3%z5SyX>baVb7lnzgB<_$;b))^k_2ZuJuOF5m0){q3 z|BjLS`>6WF-Jf&_PCh0D^FWFq)}y50(iF?B=Sw0}{K>o4h2c{>R?#K>o9V|cVBX&s z^lPj^vipb=1_6Ai*yI@B!hl(jWHMdV`U;Bu1FHw&ZommtP1U+Iv&ec8|7}YKgnZ>-LybWSHO`5^gkasB! z3iLIy(HNIw7O#(aGJ2(U(`gLkLgC6|$z+5bId(vAn4XFw6KGct`g2>4;Dg%o)PB{B zaH&`v1ER`Wfpt}F=oR0olGT0c?K#kAEtAOB@Sv5&#=hbrzF8PJwIKjgqYI~8x76uH z`d3$t7rniJ2!n?ye2-@=Ni%N_PsE}-gSsZBM~e+`R_A8j#mA) z5B>yb&4gL&KdCGhi8mJ)qc-@*VNgODe+))`bNFh<}&(%O95CD|0)w6n#vZhH3Z zn7}#ubN=uFuj`A{Lk$Fnm%&rqcWc&C`c?Fu-)RfpQ47b%iEur_M@NPI4WDmZ935ky zcVsy@wJ|&Tq5ZklVuM_Ld*AGpQcFV{znJ5P!RrSn<1)BDI(c6*vtOfD-OEXy+2VR) zMW1NjK`=yYkXnq6#$gntA!dUdaKKlxs`Ex8NtaqwX$hV~Kp>@T?Jcf$aaq`UZ7dks z5!}gktW-iD^66s8f?>mPOPXS1;xI5M$V53C)1ThTiEBOVKH5p1*hV>9;j!3GtNn|T z31pg0fixE?L=XBl62@{NeE!rs+6;&%V>@(0iz=|*!x$pmI^O9**p?aIOMNART`xU) zLuJ@k($l8H9q8U6omx}7Bt@44h}c{DW*knrp4{fV`iON}7v52qc%2a6OS0QC%N6&X zudd6@p3U~sNs*8%a)Y)-z|DpEmX9u#fua55SR2;>A;*STE<}h0g_ebAs?)e^jc$H6 z_T|u%t@j3%uj0FDSyA($z5zqL5?sOCg&HD_;3xAg1-p8IDdL?2#|Gms77vmIYWe3}iacz+~ zyU7Cp`xABXBYJyz@wUJq;N@#%Z11!C_JG*vh7H~B+p@@*R)(Ouk$#k(w}Co#Y|d`9 zUE}a{oi#_I1soq9>|uT5=gI!BN>9E?Hb#^l=@X#0OixcV$%tzhE#f7%27@ujL2|uT zXlV3+FFr$kuwA05#|_MI|e3-^NX5uZO)1;ph)uSBq(;FBtn)~q(t5VI?% zmNhBgT(>Xx_R|j?DV*TcS6|KaT~fgl%if9(&P{~$$02)unyW+FQN&iJmF-_!+gEPO z>i4to`qGXZvERhSWB(lsAcv3H1ChSY2b+>?=p}9P)DH)GP%`! zyn4w+#?2{Sk4ykgX4Rn^F7{8O>OS?BFXMoKVKV1 zkDZ_Qg9^Q~U$gdyLxr}IMrX^fEa2tCOC|EC$69}Qi4gbA^TB=OI&=Jh;C!3%RS`SA zxF}hq{cqo@y|)lOHb~JYQF@Fp_(hYgNM8?8^mhK9u0H@sbIdGqZ*lKp??a z^!W4;?>*PG{c8{6RQ_;)M=qk4m7YKCajkSgSliDXsnP*SKwu!zA zmp;J-cHZZ7M;T#F(=y^b4syvt4{yJjdbS)s*~$pg%k$|Qr3>7m+$fl-$~RALY%a1= z9Qh`EI_{JM5a|T6#oBKryeECH;;}c5w4EGfn=&cs)yHUMNhwO*?hMbq zja>Qs4e-#2+1Onj=Yvv|%v;Y$pNZ3l6LbX-)=v}tYFXRiLQJ(wx=JAM#3vz4?~$+> zz(WaEvkA|HWtPRx#vMX@8G7F5KHF;#+1);Fu)sXGAFRx!bq&j4zPg|vX=8``0lRc& z&h~W|DOyjg%e5`8^JJGEqdTo_>gf%+dJG|qHlLgizv-lZ#g!Z&Q!6gCpKBy5aZE-z>nGVDl7D_m65UGZeMzG6$6_msU+~+geX3T^?Bkn&lfBisN$z0L5(u`*?n8j48z!tmW z4T%|%SAhl6*!<|o+r0U>T2zb3LPftyQ)aM)n#K8tw&#jLj=n@#a-Uy5xgrbXqN_X*n*z29<3@n|Vr`dnC7QT`76fstP84Hg1Mtf}Ah?Jc^ z{E;4R+XLVI5sFYLeQ!1*{V$TWPbR3S#;N2*?Ojmj}1_Hn$47vDb(OhpA zA`2>2D{vKJa*oPB^5$34=sRcK;Hspe3H2H{Kdz^%4ZMep@#N$G{CJO)d~2FP(+t)M zVGc?Y{9dS4wYeC=ChFz4-&-|W#7Smq*GWLlIW>7qBimde8Po-oQSql^PHF&h_C@uV zZ|JWfO7$bGXWL@S;loNLUm~2hOn3sEVRJS570YEQ#pmdmPO@=28Je?Zq+| zJYx*g#iPPYd_2eD@qFi&AqwoI%37HJT?R{OmNzpXS^H-iR$>!+G$ z6i+*fZQ+cS0^Vz>fQm|oLJj>ajw<%qVM%{^5-FIggB}`B z3J!^-%=Hdx7POxTx}eV8R1h3VYZip8-zWc_A{b9>1To4%(0%}fiK2*lz)f(y{D<@* z&Z>r}nb3!{)95tF#(Cw%_IPRbMq&EIex_uAD5Ul~DboE1;`jdX!5@pf^SFeIOoiI} zYX3W;`qEF6v`m%>17P=I8l#<-CnqN-A;$f8DJHnn2#Ag>69&Eafme9uuy723$aAH&13si~e> z;jrW1h=}-AJOHD7E9=oJWDx~cJ^e!C z5~12wRz2^V|fcV>G3?L6|eI{z>D1kvs!-A7k8+R0NmyAI$ylFF&aL@uQCY zqqo2B&tLDZvm+rpQNC7y{Yfdra=1yJ=#Nc*e)x~o{JjD}ImEaDL&NNUvJhe!eW)1Y zJban=|G^Uf<`5seM~HC^j<`erL5hDLO>uj~lKSKsU;aJO|6KTgzv}FMrPdi(ZmhzU9#g(4$iug2U zzGmMrI-+8#l*GjfTpKbn5bD<5^ka5D*9x zDbDNSp5ES=;f)XX_?y{871agEt=-IEuV6~{v6TU8^Y@bzI2 zEz9e$e?7Y3o>SFo%C7YK^+NR8W?WfE0uA~;oQmL!2V7X7+D zv?`_0>j`FP^lxXroE{o6K5EP;edp;x`6Vds3CcgcQ&1!!gwKCpeITCkUo!nIW&VG~ z65{3{2GN3pr0oC2-g|~MxovHu+kyxPsDLa%KtXy_X(CNQIspVi51>d1y@g&xMHB?2 zOOYNRq|r+#5drBXKnNX?PAJlA;KcRr{eD}Q=kK}BkM9px3fG)@<{Wdh`yOMe0vQ~v zS9iT2tEueu`-`FHiU8HZ-6Q&-PbDvfJ40ZrHB)`v2XYK3E9O7iw*j53Pv^WP{10R( z1V*lc;}e`8!cHnzyrBdq!t58cqw^PMKmFt-sQbCwc>AL=oy8GX3mtM&qsaWH6Y#5x zdhupo3dN|j6))6IJu~f4Q22(#=jKtCDqZLh>1m`$^%@P!hs1ngY#PFqB%K5*FyIGC z0{qu>4qc`+03ye{JN2@)8yhZ@F4q7`zOQ@zyz3^*`9) zu-9~^ho*UgxPg){hxl@6dWgvF&o0Oab95S7zG~xkz(0QJ&%x7gon0k&-y84m7pz$3 z)v^DcDVS(SU0UiD%E-2f@ou&;-TQoFBH)Q3O*01(IR!ABJ&GKZnz$yzQPjVtpqWVE z&L>v52`c}2@C#?zt`?WU;D^^HQKu`GTu>iicYbEk?8qh`flXf%Li*gGF?Hl|HS_w_ z059T$`s2vA>?V?Y)8kj1V+~GftGu>RXYRf8bNch>sIzSMZhQLxFozamT2fP9WiAbC zXPqspm8InGs4Gh@jb>MYhb4j%GsGJ~@1<6c8!#sxY3ydDC|tmvcRkBHHM3wucL0MS z)V}Ve+#j7LZPrjas^J!h!)^ogbnjsLa2+iN^qSq*meY=T5u24J6Nvi*5j)t|%K!1P>&Phl4<_Sle^weZpH1gfEmr*xPP zd66i>xk_QvJ&Qy}=^~)QK6IO8xkTSPSpZQugjJqzFO^|aczpOLckD95;)fR?e}5wg z5W3lL`u=2hYpf!GWajURARsSRCeFqc|$ag2PKpj5|5A5g-7O0FRN8{)PE)*{I=+P3B z*@Xc{D^jt=wqwtNoWIbN(pKw4%GT~QOL4@n9_me;NP9Y4PRK0O`ak{RQ|>#=6LoT< zQ|I<*Nz5OPlAHg<@{rFx{7AEUZTLMO&FtYj!`o@W`O% z?w_ZZd?r5WW=)XQ0h8YI&KQXe`b@-AR$T=&2oxn?qYnUKo+r~e`9CSEdc2(}7@Y4| zJH{edx-(c$oOj%X?AiMy)+E0Ganb$pv=zL1(H$b*SFE8_rL|x;xiE3MmlSPF*Z)GN zEf@|P&glk%Agc=^9~4z9YzD4D*nFcz+`gXmQl%#pI_@Q%^N>(=Oqi^g^UORr*Z*_5 z`Yw|*P0|KuJ@XTmKxc^~`R=l_2D zLFnOUk&#zif0W<{20x>T&4K%WT*3CU=U3w7?*H_C{yQ4@`)!sIIn;pgDMbBIy8iE^ ze=pbrgPRpfW;*tP#MYpxf8*gd?%?FT_#aE+;j(wJD}^uQ?>7ADaFLXFQe4OYL*d^C6O(Cb6+{eKya5 z2+^*GIAa<{IwuhW8)x;yVMGHbLx^rega;A?%C|j-R}8MlSfvDJ&n5+~BaKE-!}t?n zL4(b~!@PhXwCK=^QAfNh^+CDUyxsu|#u-d{IWp>7DBoTDpwJ3PQovJHrBT~lzFmMYxo6~$K;9ZD)Dy==@vIKZbf7v19*9J6!Ea@w8`v5^i2T0;!e0QXLB z*p2NBny;SDt;cw_w5OLE>~;iphrqPR^(SzA`f&igi%B-r)sTnagbzt>wAwzRx{$Vg zlQF?HS*Jk`d0f`X8xn8!oz^(N=k^tH6liYF#RYBTj*6+XjQlSG6 zvnH57-SHe!4sT4|j|XU!j4`@g-BYU=dmf=Bd%Hy>>;^#OPBA2QQP)(Tup_t1D^&mj z*4PHSV&W7*H7y<32CQW7^@5$C0&qXT&!Y_uflDp+-{pe7-hW#B3}xHH*N<5ED%d(; z>3^iK-4Wm?z`mFylo@=qP5nu%q;SOU+r$bmn<~+iN3Gh#)5vwOO;BL4HzoJ;SLxJE zFNA8wU8q1kj?2WN`-XnppibIX$LToElt+z;V^a339x)9;1%v%UuZK{yskI&{`4ir% z<)RHz09Mwt9pc*cNO7UP6?R)P*)NjzmGjqlT`T=mVjvXy*uc}bYVbLG?Q5Eft?BE_ zhjVakT)Ouoq~#rLPouPJLk_Fq4CPkOveT)io3a#07R*5+;0zH7_99;v~^k>avClEqKolPpZgO-h>lVd#tRm$F?oLEnvE;PI{> z3Em7!>ag%PbfnV|*}`gt>j`HXew5ny!L>=(8{awop{aBhJt_K0=CQSFcgzV=9RBg_ z@5=Z=_D?I(b(UenZ>eA3c{%wLXL9acTyHbG$l5iT9<>sfrB5yDojCn);yP@gWYoB? zXRu~}`8~q|!~$W)k(!TNz?8dhic8xGIbAfKi%QR8qEB?_+C3`&7Qk-PK7lw1w#+Pu z)g;&4LAVSalxOmc2ZZGd@f&TtSM;;|1P2HV)j4{wtkalmuEP?hc2T=4R2{%F75(69 zV+y6M3McP(b$dPi#>Ida zX+GZ00H)!(S?DnnIH4e;I`VE~VsXz9v7{d{dym8Li)}**6N6^L(03_YRK3|&1}l%z z{SEnWgH`;>xwHU73JDqWWIqZO*5m54`Xz05+*3?WtG&FdGtOf zNPuW7xi7Z11SM|Z&yI-od(B4qc;zAP5)n`$J>u|{$guaOVC&(e8I)h_n!r7;x(s%+ z+dkV9{^ExC8dy zL1nv?EiIn`?!{p#R&?Nvg`dFwGegA9@5!#w+cmBeMPFzbPTt1Bzg_&zSd*DgeW)|F z%s~+K%ao3ssbv#-q6Gj{!q=?y6!5B`i8nAjPm1nMd7$e|NQ+T8*JzMXj+*t8a&3K| zb|_eVC#3&TS+*~I)W9?KTwa}c>ogs|D%t_8hzVy{VCu+oZZm8iRZO?uX_s+YMYbt) zgmn)p4jqAxel`T8RLWnYt}9m43|_)@m1qKw;jm2u6v1`w$q0?+T!+-trh7<>HGJPR z3`Z2ah5-6mlx+G-=M{azH2{bc(327&HdIlfVx#@TCT@ORGgh`9z5}L0?@s4E@RHIN z^mwCG-WbiV69Cy`cr`l-M3p8AmJ5A!W=T}4FtvO-P^@!Srm2_XXd+X7gUY$%gY}Px zP`VZL;Gls`@GVOY>`{YaY)nkRdgIjT6KVRBEq657|6X;0R`01((vacD7}q>@)(l?9 zOtia*a_wMj_<;3CnH?R1b8hNm7J~7I{@cfnolv!g z<0HDZr+7-NqDB37C7{LHUuvn8J59y@_#D?PHO1h4O`BBn-4})c0d+pjYKg37Q1a1kt0r9?C&n%yEk6*GQ*0c8fzt&J+A+k zH~qqtL(>Tj@D5oB#-1x7DKx??YCQ`M^C>y38Oxg_OqhhYf9((gI8sIKAu4GRN2Ss zzQ*rd*C=`NImzjuN!(lQp(rW1w2FK47;V=u)QAOh%AN*@1w)$-qJcnn(PsD0-FaBG>O5a#Gs+Ktqzu6lHbng=mod>dulbY#o(=Iv;fTX>H z8XO~R39l2=3z%z*p%{iDdkA5oNq9;_3{+qKO#7Xz*tNntgxv4kGzn!^>G@N8?=wvA zD5?`J@}3i?)pPL^A~n=5{flrd`A>O_;SMAV;o!~deoRjqKc?L_^NGqZ$XVGR2PHub z%u@2lC5p0jVg}LvPYmv>t*sJw+LS!!fDP1#^WYV!alJx4;sPSd_5mO@7#`Rwo8z3M zs&6awaFX1``_1b7*CfWi{9o4r@ z=?c_-qZEB9JP>Zw{yfQcM^HT5+Id()NOD%3aj;TY1~}FNO>?Q0nEaF!Lht;fM#p21 zE$c>saBBTw{9XNW*c_ZyBTdBZsrK-o<-xhG54*#*zypKb`BD4g9)>O(j z?A3G`*yL+8>OLmYy@6y&O4s(drD1ez%e;~J89_Og+vpor@B7BXzrr@B{aB|#nw7AWu%bQ3)O?nrN1nuzoLeYh)ZWzFCU?x9IBCEaqpljqfRyD3Cqve!3jGk?8NguSpAJhh<=78z#WKQ8)Ie-GB(O&o%En&G0 z1E4lIuE!q{9q6n4*Iw%w2hR=JIaK?(sLoPlrS;jK10f7EueY(m+?0kw8|D1 zPe~q6W=z7NNYUtlXM|k;ZK7@1>}&lJox1FsaYWrdOO&PTT@Wi#3?OHD9SPRy()adF z%V3jIi4Dl?e`Sfv979cOd;gy2SRDTer$_1!>*t}jONn2%^dVuL`D-vqX#U3+>E%-q zg*gv6EpH-_z$>e;clP#4AnEIpNQE0iyIj+@TZ9&(-1L+KIwQ!fVJ*-%snjBk6JBU+ zO<7(3JzeZ&!W<};cTf41gtJFwe(z}3v7l!HC{`HUkP)=?EDC!^(~!@ML=ypx za)I>z(5!it3wL{PA-b=;mAYa%9B#lGfxmvYF*5aq>)kysGLIKS9H<`*UdXjP^ews86n4Q17X7X_6CaSokIV*%bju8 zFK&HeGoWH;JQicx={3g?X}}07ZtNco|JwF=l;N4(rn!PehO*{d1@+t#Tj!#f(MLy; zj~pWQTzY>-1&f@Czn99B@0J?5I&J7EVuwN66OMN@>b8r-`Fm+~vE2g1RU_vt$jjofsr7ge@5Rd0ng=|zA#x{CSN(;1@{!A8AX z`a4e{j}t4dfR;64Cu|2a6L0yYb%B`eBp{iK^8ua>L*Tk=bZxjd3wfia?Q(8;5f;L@ zAO>p&!U8=TtgchG->iQyWhRj@CJfUXJK2wuY@7H9;%&FwML9*-lQ=9i79%Xzljgwl zIkI!xn|$a3rGwF%Dc@#yX*)Q?)cry%bAiBM=ngDVOv>_rKG}ZU17_c^U-D4ZHhMF? zKjJM_O7lzB;Ig#X+(x7P_KvQ&f%6952)wznxU&|i&qz8Us8cO!J-#3~NYqf9v|QSN zmsei%bMXj4>Z)3Xs5S=4nAIsrAOj-jocX)hjS>CVOS1EAZKmYVz4(=) zE2$FWT%8eNICD9zA5smU#sj33+<13lhd9jhYv`kK0`Yfw(REDyuYK_wmf=b+iTsz} zs_l4=m;^{JGBdHu&A$_V|LiRON;m%F6Y`zIb2@!Fu&^D=5-4fiIjPqsNh{Vo#U)YH zlD)elJ_)=V-~U!dMT3%rn;s2)Sb3Q8;?sfI7*YSWlxnEeokQMfVY6JIj%f6S0y(Ai zA%x|4)=Hnkc9}c(Xx_8#01@6wj0@j2U#~%Q&W$L=p;nsisps3GLct;@h~wX4x0`)E zKQ&1wF*PTbQVBy;44;(0F(f7z z3Om!hh7FV6Q;Xi&BPW~9G@xRq(=vNhJ4MC!2Fh}SD^WKj^g5G-^f#2YSeVZh*8;ul zO4TPhgkaX@kVFU-N9$VLA62{ z&XwUV->mWeH_Y=Y;gt%t{*fB49q>~#{vm|4vPR^EYmRensV&;eQUOUS;|l!2w^I%{ zl11Zv_Rq`tgQ4sx^#;)vuYiG$o903D7p9V!HW|C);285gx%+0yRpZDjF}?kH<2R(g zJW50dtLR@tCN3nYo4N%&63=qZupy=2O+E6CwUv{ykft1R9L%c`sP;+X36fSNF1&Y; zRqaD<)E9^Uik0-OktHPidj9|_D!fTxIW`CFT8Nu`IFs&e+ki<;eS7l6`dapfN;Vo* z=9ISHa<~X*irYBt!l*>GV}!h{LeBbmuEQTQy5c{ox;WxsN3W~8ZnP+|^Ssq%Mc-^1 z`ODyr&5q}i$^72^?(_6(Mz^J8_`$puHchTk+}Lhm$0;YktDIABhuOFm0bf_-e2*^=#vj2elZ0fH z3o0~MNV#ACRPi)NW^Kr76*t6|IBHS>7!#rXdT*s4VSg=g{S%d*LlTv9<1GlC-bC-k-vB4R`Rp7JstjP{NW9)Lr&Ay2W#yL*{)`#*m1#LRJ_4Zs` zq*))p>Y8gMfIOA`pS`z!%|o)l_d5M`&5h6cz8+tSBD=DW5#Xw zohpn34KZL)}5w}$_Y=aH#Y)6X={I;LSTOX|-FVP6~Oyt{MS zQ>mK#9_%49Df7F}dD%XMoYXJ8K5%UelS08H-{ee&6KE|0v|O1WI3p>bzmox7dqijtThZU_U~kc(@}w*4Qo>H>Qv{&+rrn4`rI79M_1S( zziMT0bZcSk5_GV`@>?R*wrclA zzV68kbl?Hd@Cxg$ZaHw7^cSPkKN#1OiNJdJ6q{b&_-JLaR-Ckfs_kEP3 z&wI^I1sA2Vt;2YP*r>t`a^LDXgCHC6`h$=*tJOfOH*}|d^_=R`X?iD^-oEOfa_2aQC(JlA`w#wNJ!J%S_)73s_O) z%>6ZiM3!?Yd@cEALKQtW0iLfKpOmz^-7e zk2dKJmWN<)G$+IOAt8UQ{@GT$L`}|g-#t$kXxb%t%}1TL?B1kkDewudd>G(AAjQ=N zLrhE_neg`{jX4$G^=rk7^7){9C4Z!je@}sU?W01Be)OUxWfM%CI9KC3=MH-Sr5%+^ zGgH`{x6#}bD_t!UXyJsTuZqC>4I?%SQj+48ExG2(jHU*Z<~8jY4(~%tEYrIgz>T9z#RTRbF6!4ILTFMD0Ct{l)zc?YZ5zc19-N zW)F!qBw{b*3;q>*;(b34gpXakp?~h)>S3T%nk-1KT=?=(ueY)3$rCjo55@=!Eznr7 z%j1KaMKln`P_DZgzj+lE-%K2M{l==BnsKaCUZ%DJ$-?`h= z!$`i9`niq|zn&vZxJ(5SY#H<8gz7v|KJlj1uM?1Y(caWQAv;}#K?Q)^fD?p{k<*yq^gFVZ&Jrn4i8{-0Icuw3Tf`w3Uw%0Z46V3TVjKF7CO^uq2cv%~&{NGq=DmEa*JJ-R#e3i8EE{`q zq{2I@@&5*Y55stRbgKB#juCIR%Za<`24^AecY?=&pU$XScf9v(7X zpsfDN;j3RXhZp;quZi9nK96*M5%&K`)a5fW^8Y}X{s+vCC4;rv+xHf!|FMogDJADu z_AmT##Kp(t?;hYfvjqQ0P`F$?!}@EE<=>-ZF;HDDCO#H@h5DVE^*5X9;pb@AKM@oD z6{>xk{NN1rmoUF_zW+1I8JULvJnXOYKKQ>6`2U+7{4i>Ac$H4|d6;4mO&AlkD&xDy zIiRu;r_zGq1P7hiCKn@(2xOU8N^rXJS+mm;B~cMen1t)G^4z*B{^T5Gu1@B}miZiL z(o(5mn_?ok(`^Tv*K3mZCHMER?8RrhTYqzXIjw(keH9`lqsqHiO#p9g+Z zVdVmS*=K4;F(0Dw#z^lqUtUa}OhS@_!X$UP(l>o7*|J3fW{+}!(ZTwT^yEi5JgVT- z6SH=G3+a0Wdr|x+XaD`{-%ezxe<&U6RWoZm3{#0}VZIWrhKH0iV?|(+Bc^{*IGzo% z9d^RZ3@W@_?>;bPVaZmv>;adA6kv)yX7rFxvLk3lCoSAsP32BX#UamP$6Mc-nKot# z#n<_!JF;Z9-YOWt`TAa4Pdr(;0XV`T;;-I0)3C93nkGPh!=Rm>C&PfP+og!Eqsp#e z*T4?`O)ptsk0NdgTxb~GbGQ3Hn+UKultzq4gqghbxA{&o_3l0| zjKLO{=l~p1qeV5Yn(_1IxNWU6>w%TUR%ZLhF7XFc!kI%SICvfUnn33*3LkWTb*5A; z2_Z-(qL7VvfrA(XWJxX#>IM^pRh4+P@qM~Aw#cr2u^9Tu3m!pa96-#L3{*IEwQVCa zU^Rv_s^pA*`Frq2eTazX%cR5uX5^XkB z@>&AM1uSbs{9QpH zMZ!7h!pSWiRMrEmCp1=F?I&-AH^tegC(Y@eL`k*Hh)a9NHQ^LFZX-=g6*JJx0-Y|; zB*3K=5)5c{bZ?$g+2`hWJtjVN3sU6L4Q7Qc%hp=NoTqoyCibJ~>WC;XkDK<<#P#jY z(o!1}!)?-qS0{@FL%Ok48FSiwZLBnNW7QU8MMNFm^H~EcddQ~SD^)`wb{lC;C7*zT zmLE>XUmM8ko7d{kqg$T8sw^K#81HR%yrJ#0@=A+u+tnn0qGm<{ym?1j(QrFpH3XdT zhQC3)g%vGtkS4q_)oP-_>XXIfmAi8@W!m1VLAJ0*N26+b45n&o|&q-&>cyZ6c!Z~>TQ-f0++ zs8DB2BA)Z|xX(D;po^|s#UXtd1(1@34-?xzMnHOO=nIbzQv3sQUXuz-cjlm-N~)|r3i(>KRUe?WDZ$*ojEz^ zcTcd@G+@ZFYqo}VHR`&ACB~*mL)5FY(hBpnuFp*Xqu=)&BWtF-5@d=$6Lce?Uq~!G zo$9l+L9HEX9%ZmS!JLYyZSKZ_xOf11osJ)E!FulsOupKGU*#?3@HOh-@T}i-lmfT# zSVmSo@Mp3g?q(==)5~hvV*K5py5&>-EM%nS&f6Q*Otk{p6l;eJU+=Tr!!N!W7s1rT z=&x-LpEsGRA7`TNx3S6NyNXB><^slwho_<*KV8<=ksfIU-*Ougx=)amS$r;kf#G$^ z$xHFW6490!aCecr#XZFV7Zb!%yb<4eO{~XW+d!MlRu17{YQqs0A--$Im7C(ekybA% zJk+uEwP=4Rcq8Y{zsw(s&^CZyve!!Tg*U-IhYO06mMU;HZ9MX_hSDh}8Z;FNHXn8I zCdEhJJs27zoKc?XEJ3YE7B>?GAp8A1UA{c}lM*E~@}$iBNIt@HXx>tP@14lQ>9&pm z#7J4W-Ku%F#Tu@h*EMl$O;5WwP*~uvF~q7pk4?NDL+Mta-$z;CoWOxnhHmPAxB!#S zqI{j=F6{guLMh_x_HWA_uO8d_Bw!CCI!J(sc)I#gQ{3i{!MDewA#I|`Or0Mhr{>js z+CrMAEz2l?G+23dlF$G@flR0t}-_8*^JXF5!L3yk(QX|Te(Al#F zedp)G&#k-*Sns$do8R}jlhNHrlX^4-qvK)VRL1w>9i`+%j!mZI8Dx=pj8+CO?We4# z$>M2q@P_uRp_5%&zX*0bzLNuYEJY(O(O~M_RshvO>EiPI)Egh9Y%=HF)e*lw`d7%? z53_Cyg_&brmWD7WJraofSUYEFAkqsZC0HjTKpT<0lT&0D4>~9d=xMQ;@2V z4o$u14jvF-ji&i3v7+KrD)Mfpadv3La6LJqt1hsjWH-mCIxphIjq5Hu#P~o_)!!qe zbl6YOfF{KYb12M$fTIQ+na(7xqH!N+FpKaS?HYw$!3w7`CrZI?j|7eOH7MrzQH0mJ z$XM%{k<-#AlBZYjK?kPF;~>_T-tQo-WA+1RGKfni<8*9_cTpN1xTMr|-~YaVKV5>~rsIND$VS#N3)0O~MwEEyJGaB0+Kfs4OMiZ$u#ac=4vQwXbHCD9# zj<=f#J~%Rq&lq`*cb+oIKIj#}eXi^DQs;=-6j?2JbdHkmG@_S(VpJ|wMrLz*JXz>#R*rb!8A3*^#{cLclB9r z@gqm!A%2V8B;xym+4e%9Gaq1tit8)a0iEBJd6DY8P-Nvda!&ExNNV@)7q6(vZ%t5(V$^x)A<2LKaY85xla}VA^dKcjLo*yhDflQ{1~G zm-sC*Cy#~^7XOCR z-){YGJqdSr&d$dEV=JsnyjHJrHQu>5IBb)$;~KRf^f(BbUZs=0Ho=5($kLNPRNKWS z@%Pummr*t3dQU(^rm;_5lqAVCiIeHfL3bXhqD1B_k6!f%Z-{~_LI^Nw#KYE*lW4D$ z#&VBYdT>1wz^7J+In8PIUGl^%W?msft9BE z6YpM62nk}@w?Jv0j{^1L*5o*rB6>lnfY$f@GV6&%(X@{3gI?OcRjCj_?d}RbBW8C= z#%GcRxgaGfL}(2iu5$zswH*p8&c)Ln{7@ugPl}zDdxSlX8whF93yBj0!h-hdbOjfb zZ`-}m6e-X|U9y|`!pOtAR-BNi@Hj@^kmHAkn%O{yL8VV#{)CJ%iV?Qb2sSMWgt*25 zO0B0}Ob(>=Z;#2G=Pe%pDSmzEcn9mZ=nK(oW1M}<**wo9?np^3k`GgSgV!ql zLE!A$BoVW0!caZxs5J(d$_2psZG@DUthg={T61$mLGV+Pk|J_*hkGv@AY~PtAus1a z{KA%3Kg^tP0@&>SPM@=8di3!m0wSWs0Oqnbr&9!hI4M&XyQJ~t=Mv)UEaq8Zq6>VY z1TIH{e}j4#JU11j|q(JGZ7Q3 z3PMY6DMOut3~OE#b*4v2W>9QLe7II01JC?#y$eFgRe+##-jZp64XtYNT7c2+a?Y#P zFQdhKA5RF5gs2*A$ohmPf5TS7X4PJ9>U8=RlRVnUYw9EaTi_Tz%O=wssSxTPj4HAY~hy zd9oW^DNH}PxuNBQ$(#@Dt7z)zbG)JE*pR=(Z1jBS)adJ#Y9w*K=-Z@8N#a`u(>s=r zQss6-XixSG!QfeH0OX*2qx*$FJ()X`YDSpq_xNx>$JE5Or`auDnOE;dDdL)8shWFR zSH0BJ@B5495&5i%a8fD~$HGCr86|KNTX8=-{C86GO*h-0l*pcpXZj#MNui#u@`m5-*{x?38 z31i7am!myH{EFBwn%sMYL9$A9#3@xAN%F-_-CrpwnJ%*vUEe$rKEJX{tWY2wR9{@L zJIX+b)~QS#e|4k9Jj+6La1>4*uh~$%YAU|XgH zYg^+o%So(jJVq_llz+_gUFj^j;Rx6?(@BH&VSPj#J4 zCF~a$MdLeJbzTcp?4ynIg{dKxJikWvMEby@XBmd~_cF%4#fPWx@ z`cRzCQ{3o5zyi@SGp%5UTuC`Xf1+5Hk;Z67+9@t~CtavH9Ey?BDwK4WDh|qZVtREo zvIj%DWqJ7Wq3rviw1JSJ7WI^J`NWje*Q)vl3e( z8mT{;Ii&>%kC{Uj*P|&*UYYLn-4~8ijip9A;Bl#4?%9=gA=i3h68p9kI%JitP73$wq3GfgPCBf)ls@LS*D&M!omQv5C!eBuJHhM zv($$B<#!%rS}3`Hnab=;ZS#pK$MMDa_9LgBR{jq%HI-?09x8sTp4o z%g*l-S;9$gT#eB7m#T)F%Rovtm&*pVF*(;<%IOZu6`-{q|MuilHj%DDLu_s7HB1;R$jl{WYhJ? z)KY-=Ck*5!y4H@OH9Db)L)Wrw6psu~q+5u8w1+A2c|1{v(8L9dy8f|%DAwotE5SFk zSLLUPnZNQ)dTGQkmHT^7+9NHt{iG;N5T2W6}l^{?U z09;V3=uA0LzXJ2sBzLC4d|nJVQP#9Do+LY%?zV$$RrVWVr;w{Y9-S%VlFc=(;9A*V z`vm=1I#13a5loXl`CWIr9So9bK!LgdBn>C)>=ySce;m#Ni#Lqq+BbV6o6L<@gK!+v5d+PtCOATLh3_#_9T+gG1JoI!Pk(}eS@rJrD!)wp3!s_Win z@D#{(Fzg-x`^pDFzl_R)TvH4)y-n|nUC@F8^7Alb!=(`sIA2x-@{k>@%k{P+yc@QI#4$UFO$swhNBOng{CH5_C}uU7xF%)pM3j2m2^q7M4Cc=tj0!*IHHt2fSXpZ(>5{|$tN_HdD* zv#mNB|35-!FD?#mT)Fw;^Qr5)OI9v|J}~B#=jod}=kC3DC(hMv&pme4#M-%7!YIlq zvPuO#oU|f|YuU|TnzL~nptfK@4T-$A{$4*QoXu2*M*#d;tEkOpEMP_@E-Ms>=!$IN z{d=)=VUM5Q>AJl6p-b-6uU*UHp_<^O!=N6V-@M;}!s&tRsc$rPE97@IN0x_vwHKd7 zqAV@||M1=Ahc7-yOa32Y_Fu0avQS+fhLW*Kf!`zVzgPG2Fz(NYm>Soav$f*>*9|EC zw2WuY%8dSkx&H4~fp0&wN>&klRrJ4~{P(;MtyKREh2D%he{rRM(MFf)S55Tq$uF+h zpZo7|{`Ud%V*eEiVyVAW^vCV|S16nFKaUa_WC<0&db3zFH~A6pcf{pyIk{P!OZ&&) z|3T&Kd2jIcy~6(&gxI_MkE`|n{pN*IE$Jm!?Y$}AGCJCxcb$5&mtnysKgfX`orTfO zb*1Leh-73-XQseBJwZ!)Hp?5guKFS^M+5D3d&8kqJIaHeLc23%ylRnJot?*!Q?l5-yo>{a(R@*!lVszB zI@leTDQNW)6HrUJQ>LU8!ow@H8L97#;R^q@_F66dJ@t)cTCULFr0Vm>vv%Ue0UOK# z+gnjs;PW4|Up_R87TXMaDdAfV2N!I)={DYdwlvQ=uzHLSplk)MVa6{BXV|h5>c_XI zFW)Raa;vio=Ke)>-C++ElMJ5_4cWzhmv2o}Z)-JslCdzgFBc z*m^$b=O_P=kZ%SQJ!)2V{zGyThvE82Vj&T5Js*Kxxi*w^$l~m`+T4UcD-*OyIU{!t zS^VjFPsm00@^A(z-EiJozQjtb4PmHycT zEK8Ydbc*ME>R@-m(~d(=Nx>V2)xB|eW<%fRPTB^HdWFL7r{eu@J>JfN9US$xtue%@ zGEfZgBY&>5YOis@8#bD{(OXj)!&6Z;1@k9#&=V$#4A<)uUt7oIxhX8{pLFY}o^%^8 zS7TLHWmJ!mm*D)Czb}iLYv@43;_H;Mo=dL)6D!e|K8bN@GOVP)!fkS*+dgMSvrFf@ zp`q48i|m^DLavS58{J@^Ed8|L5;N~)xw)EKkbTVTo?MojUxQw+@vT~F*ZuUm9p`l&^!XAV4@b%pSciW@$UZGu+(ViBY9csE}YYs!v zZQP>|-QU@dM;C58cz%LThiG_@Fwjnh-d+jXKQ{^K~#1vJ(}Z8HossYWR~K zN6o<>YKgLwf#5Np?PfTIK$_zk&0>LqJz;i^yPfrRR8^3}&8*#>)lE1^0u&av&UCO4 zqR)yV8qG*z%bj5lHtRNh4!CD_MFr;o$6udHe53j0Ad$8360h6nIT-iivroT7k*_L=w4OFhyw_;N|JM4urw z{WT-tlS+hDRh}7s5c5zw4FALu#;n43e=7oyX+$1E9Su_E^oZRs?RQhM-+9zC4&de4 ze3g2x+X&F6t3{DNLBn|;A;n!?k|(scc($jXi%gP=9aFsry;?9^#Yjs;r8o@~e4kjN zQ_VXaV8x9KEfuN9Q62AIa?Qah3$n{9K+PuGC~vF>xRgjDyxT?5)TIw9_K)IPCy@}J zp|)-K*1R7CoNc!1gYQ7U<=k{|_WV@0QE9sxWJ2$wUUAB$GyN$>1r4st)#JZnwbJef zbg(eHN?UMFXDTQ?Yu80M*z38nE6|hpGFvxbcR|YjDN#>C-lzz3P*&m8&TWbtg_Tyc zY%1UjnSuGV$@KKztps`D)%|vAIU`^A8oI-%wcnKF^&~3TEo{)RUYlEU*~>Fn7Y=7F zFUDxo$j>J^-ZsEs!V{t0#Unr5%#LtH0pS*8Z(ewK~x1WT@8A7FBa= ztQuR?JWCJ_RSk-u<{;GRK~YrAVrURU3{iv~s}EtTofB%IjW~qoqjD&AFo2hPen_j47t5GOv_sD%iZN$| zx4>d$a;>+<15in6|$TtVss8r-fgjp0n z&zgRY@KPe=FPLP)*12F|DM_wb>k!?XwHYP+bwb&X_h(=A1N2_^-DvnIuo=Y>S&%rsnlZfG)o06+lI{e4 zGp2#O8Bl7}l!?)ZUh3f1B2<-4z8NiHiSuu5yww%W#eTv_>+ zi#f6=ELWz;0A@TLp+7el_P!T`sw~$OG*od16q6?(hPg%JS>O*yj!%>He?1a|E~nSOzC`glc9^_Cf7vT^yCVai zGi(Wy^94T((Urh2ESAmfwId`{`jw`Qrm!kDOp#I$tL>KPw35S_bdHN{JF`G=S;d{l zPNJij&O4!V!_bo>bCF#Vy&J!Kq>rH&3o}bIb%wKylI&Hb^TFCz_R__=hIGHk6t1M) zZvMn2KZG`5(j%6t2+Z&O^tfni7rRAe@az^F7&=)7u6*m^3&os0B7VW~-;DYyADprx ze|PfwGT3R0)Dx(=Rw2`60|Qh z%&6J69~+AzuUk3|>pxs@N||{d?3>?YZG1szbh4X^r%M}eKTwN0h8uOqU0^tnL#ch4 zaJufKh&}o$!tRrdoB`e@E*A@1KHJ6G4Sv-H)jCHtVxYi?@Bvq>46%Q63d3zs0LWq4 zxSTEdTT@3KIOq0XeC^rpOw?Vo#P0c{!QxV~AAsRhVK8<4 z?3{ksHj%=;n8+hh*ex-j4irKHL)!~x@FAjB zIrF4&NRO*y!|*(924~L2h%Ul#Vq9C=SDAj%g;(URuKC<@$JS*O$j7}PypyNNC_kHO z=ii6wh;#8>X{oI5UfG}MfroqS%@sKrjKhrV3d)_JvEkj?A%D`#NZQW{*FA+Nj9ury z|J4si3}pFuFhzrWbh-){na3)%PgTvfy9qFhUmih%{oLdF`GW_FQpaF@$_5Ca2*4s! z-PC^TF6_8~3u? z+;^1oO2!xENzh{aaK#;8@!kDLqy+ve{H3Q*odO78d4 zELDVN`cJdEgMa*SZuId>DTeXJpDONJ+E}-dh(Ty@8qp2 zW1={#v>4~sF9v9W?{pA% z3LUrrHBdR;d7l+9h3zP1A+i2i(+>>3RkV2s(v{WB@sB4}J2(*Hb4#p_Q53 zC1ga^Ni43KbKIzg8W|=p>D>GpSRjb*f;-0pf&78Q<04;Ygb94}XYe1ASAb7oMGn_b zMRSx=<&nN+=YxB4OXslr;UwYuE0bqAQWDPdU2pAf?3vu=YXu=nR!hUA;nrFd?^;it zjYru{3FQhLgrEkq9-ID2Ye6sL<+e)uWWfpLz9C?K4@N9; zc(GP}sq+Q2D$S^eaoKY?ihjRs%qNn`1HICwC;MD06UQjfG>3pI%W$E(%pxfj-!jF8l2uz|= zzlk9@EA?WV>;yHL&OX+3bACRTLvuC6cI$hk%wF368fVze8q|Mtgi|r@=7SISQpBN| z3>aCfy~H_H{gnFdGzCp_QJkf(ZM5&?s+_YJZb#5>tN*1s-H8hxD4A^Ov4&Ukt4wAw zThW8Lbsaj(mU_1MQEOI*GdIr0ccG0mpAADq* zo(NxJ>NTY=^AsukuDAhe#Nq(lUA9auUogkcfk&x*#)iKJQ1&VBsN_ zTZf!bu`uM1Zbm!)1z*aFNf-LuTyADQZQ zT2M#R`&_M>pse<;^<^ZaPt#^CbZL#Tz8Eg}=55EVMJl^{H z^x()LF%C%w_DxnF%CIeXB*9x*X;uu!y&Qg=R*C>b8Cy1V=sWeH;x7?kS9M>oDI^0v zLtuT^Y5O9p?_0EQ?I}N<2@0qtVMVJZaVB(4_zI(9m@-jkCLmDE> zzZe_nUaN?m%1YTxPTucFtS!|aUyY5_6o*86cSyvNwTVX>c&__-y~FM+OEOK$JI;p7 zv5Z@;j^fQ4@DTGCcR#TymFf#xc-Cpz;mVi4Xki~YV3+p&g99duNgx|!kmJ0($iap@ zj9Mda@?o4DMb$u?jc51OG@}cxpF4>lmP>t zpk0Vav|l1WTY-i=L^+(92-)7pj;{gN$F2rxPgg%wY9hMnNBW};Xu}xJfV1Wjl?sV| z0myHIjI&(q=!?yzxBaHS?vcX|U1zHvW_Zst+3FjVho%QA5q2Ay@blH zQ$DZ7FD|umo*es38+gFNP5tT7E_xRz-w29LcB6BTlY$`}F3slU7%y0iaq^0|4ek#A%23t>pq*XE`bFMR2b zJA)&ZF@BnO23wfP&pp3c_?8^niYeo%g};F#SA5qz+DGiqdvTP&`6$li2qa6On;*i&)y zjaMP9^LlZ> zVvdLE)9;t{uyBxHC3=Gz*`&SKa1+WIpn7YjsjKUU#jv#Fll1N-s_gW_I?JyB_|$3P z2VVQzibqp_1J1A3s$%`#ldZiiCuH5yB@7R6Os}UNMd&4!o{V+*H5DyQ^yfz*!pROP*lDiuKrn6WwR(9dV7l=*C_te9j-&Dy zF2%6x0vXiTMy(YKuVjSSRAsa|!F@Gxj-Ae~F43V~OB6TlQ4&^HBXR2-Ywguuv z+6_rr%O(>h$ZE0YJZoF3E())AqN40IgCiWabtTSCYB~*_s^hY<%+if{I(R&V*hrD> zzJ?gj3g?#6umU4V&ZDUK9XL3cAbZ5CUT*wZ&iTsnc2X?+0Y`wSq1nE_B{?nt_Q;&O ztbMsVAYbg7;qjTWk-r8;#lUjr`?I`=58pA-wDwi&*HJ1d$pQ*&;rA6cB+NhZ{%wBS zFER0^&8wx<11wmfl;~?>CZT`abqW$FX_c-75whS4b`$+*Gyju6Y3LOZ>}7~`&}Inr z?F}|2l}cE36kFVYTm6uETpj?h@n{)#87F0Dnr8_?GXRD22OQN0)U!v!L-Hb4c&!$; zsM_uU-b200yD(Y8m4}4V(BTKv6%$gfLZxa^bli7_bLDgAga)Q9@(#EKjJ+~lJ23kg zrvcrQnrCJF-$+o&+Z8nHC-1`if0Ii4|D@M*d|?+-u1G`5XV5A1_rlpMKUbNygshG_ z^)+i=my~b`@1$eKSuPQ9=k~wVOvWh`cWvZ%gwwy75MuoHgK>ySN(6Y74p3x?f+dr%y9pzktfKjYXrY%)jM^Ac-~o>m+I%9jk?#@+1`$qm z&q&0ClY~t6+pf|u6pa|<4ZFO@3~OWA?Ss&8X5eD2OI&+wyu3_#;+$a%&#l=bP5hDz zW}s0{CeNwZLM^_?q3DB^r)3PNivhI`9jR(=kle3%;}A0B!SCmN51n8gvHg_MUx!$$1e* zOsNhBl9eHoPNs8U5%H$K)<#S2qY~{3Uu1M)#Bn01VYIBXQUS@1fgSf-Ho)zA%Hk)u zjLFss@fbo$7Z2ME4C@IzN*8;q4|Xt@z#Dsvn=aTtE7p#AB5*AXAVBMp-oCVyrWCvt zYUS-XjKO88ILzdRhVL#5xo@Lf?wu|{Ug!T}!+AcBlrGd0H^VCeGzfy^y-to_^!F=g$wd~0)&CT2qN!f|#o#%;memp4% zzGOp;(qm>qdfcF`?kTHOhyHg9(GoPQbaub7R2Y|POet-&9_1%ytp$S8`4z2@sGmq@ z&hlsF1ciXtIo^4kX84B1rIJr7qdcV53zktV7w;z}7f@!7B0tnrisjXxDpM>{>F@5~ z8Y)(|^le;gg=WmVbQ<*>e=K!xwa+?jy@z9JcegI|rd-H)b5@^giBo}XfxVC^`q{6{ zs0L3^Ki3EzFO$7CN!3<68;g7or%7n$bo$P;z7OlV+c!1!c|ZE%;!k82VbEGV#Ixce z;`qmLfrsSu(%?^! zepL(AlY@@~1hyD&0TY0nLJ$i?UJ6gW&o-X3bGB3&zSVPX9MN($~lM8gW;1O%OIbg}1^Qy?=S- z-(T5BKS<)*NHPdaLp|GIQ7TH4yCmx-o5`|opE@6m+(L`qE0kjwE@n@xuPl@BSpAEj zu%cJ-z;`IEka_s`q112dHG(9>d8M(}Xbsy%P@KAmYK*V$QY~#=7ma6iA3|l8oYY=O zl3iI{;lf{OS?986P5R2i|4w!}>Rj{sol_yrOok=DHca1s@O0|KIj^w&q$%eG43*q9 zS(~-0fPd_tr{wFfVG`*-DH>EzARe!C6>(d)QY?)837zpP!i9FfOgd(DY@ zhJ4*z8cdFJPSrB-23fV6A3vbOl^xO>{aV;f!I?D>^{ep1Najddc9@+;N&{`UV1;{{mEXZD=Kpv|y%}9o zNOP3usn*}+9sk6YsV$nCEKSid{nv2)FR!ZiW4JPc=fBGKKfLU}J + 文章 (8) + + ), + }, + { + key: 'applications', + tab: ( + + 应用 (8) + + ), + }, + { + key: 'projects', + tab: ( + + 项目 (8) + + ), + }, +]; + +@connect(({ loading, BLOCK_NAME_CAMEL_CASE }) => ({ + currentUser: BLOCK_NAME_CAMEL_CASE.currentUser, + currentUserLoading: loading.effects['BLOCK_NAME_CAMEL_CASE/fetchCurrent'], +})) +class PAGE_NAME_UPPER_CAMEL_CASE extends PureComponent { + static getDerivedStateFromProps(props, state) { + const { match, location } = props; + const { tabKey } = state; + const urlTabKey = location.pathname.replace(`${match.path}/`, ''); + if (urlTabKey && urlTabKey !== '/' && tabKey !== urlTabKey) { + return { + tabKey: urlTabKey, + }; + } + return null; + } + + state = { + newTags: [], + inputVisible: false, + inputValue: '', + tabKey: 'articles', + }; + + componentDidMount() { + const { dispatch } = this.props; + dispatch({ + type: 'BLOCK_NAME_CAMEL_CASE/fetchCurrent', + }); + } + + onTabChange = key => { + // If you need to sync state to url + // const { match } = this.props; + // router.push(`${match.url}/${key}`); + this.setState({ + tabKey: key, + }); + }; + + showInput = () => { + this.setState({ inputVisible: true }, () => this.input.focus()); + }; + + saveInputRef = input => { + this.input = input; + }; + + handleInputChange = e => { + this.setState({ inputValue: e.target.value }); + }; + + handleInputConfirm = () => { + const { state } = this; + const { inputValue } = state; + let { newTags } = state; + if (inputValue && newTags.filter(tag => tag.label === inputValue).length === 0) { + newTags = [...newTags, { key: `new-${newTags.length}`, label: inputValue }]; + } + this.setState({ + newTags, + inputVisible: false, + inputValue: '', + }); + }; + + render() { + const { newTags, inputVisible, inputValue, tabKey } = this.state; + const { currentUser, currentUserLoading, children } = this.props; + const dataLoading = currentUserLoading || !(currentUser && Object.keys(currentUser).length); + return ( + + + + {!dataLoading ? ( +
    +
    + +
    {currentUser.name}
    +
    {currentUser.signature}
    +
    +
    +

    + + {currentUser.title} +

    +

    + + {currentUser.group} +

    +

    + + {currentUser.geographic.province.label} + {currentUser.geographic.city.label} +

    +
    + +
    +
    标签
    + {currentUser.tags.concat(newTags).map(item => ( + {item.label} + ))} + {inputVisible && ( + + )} + {!inputVisible && ( + + + + )} +
    + +
    +
    团队
    + + {currentUser.notice.map(item => ( + + + + {item.member} + + + ))} + +
    +
    + ) : null} +
    + + + + {children || tabKey} + + +
    + ); + } +} + +export default PAGE_NAME_UPPER_CAMEL_CASE; diff --git a/src/models/user.js b/AccountCenter/src/model.js similarity index 90% rename from src/models/user.js rename to AccountCenter/src/model.js index c84ebbcf..f927b437 100644 --- a/src/models/user.js +++ b/AccountCenter/src/model.js @@ -1,7 +1,7 @@ -import { query as queryUsers, queryCurrent } from '@/services/user'; +import { query as queryUsers, queryCurrent } from './service'; export default { - namespace: 'user', + namespace: 'BLOCK_NAME_CAMEL_CASE', state: { list: [], diff --git a/AccountCenter/src/service.js b/AccountCenter/src/service.js new file mode 100644 index 00000000..6fdf83df --- /dev/null +++ b/AccountCenter/src/service.js @@ -0,0 +1,9 @@ +import request from 'umi-request'; + +export async function query() { + return request('/api/BLOCK_NAME/users'); +} + +export async function queryCurrent() { + return request('/api/BLOCK_NAME/currentUser'); +} diff --git a/AccountSettings/.gitignore b/AccountSettings/.gitignore new file mode 100644 index 00000000..8ce76bc4 --- /dev/null +++ b/AccountSettings/.gitignore @@ -0,0 +1,7 @@ +/yarn.lock +/package-lock.json +/dist +/node_modules + +.umi +.umi-production diff --git a/AccountSettings/.umirc.js b/AccountSettings/.umirc.js new file mode 100644 index 00000000..70ab1e9b --- /dev/null +++ b/AccountSettings/.umirc.js @@ -0,0 +1,18 @@ +export default { + plugins: [ + [ + 'umi-plugin-block-dev', + { + layout: 'ant-design-pro', + }, + ], + [ + 'umi-plugin-react', + { + dva: true, + locale: true, + antd: true, + }, + ], + ], +}; diff --git a/AccountSettings/README.md b/AccountSettings/README.md new file mode 100644 index 00000000..ff93fb84 --- /dev/null +++ b/AccountSettings/README.md @@ -0,0 +1,17 @@ +# @umi-blocks/ant-design-pro/accountsettings + +AccountSettings + +## Usage + +```sh +umi block add ant-design-pro/AccountSettings +``` + +## SNAPSHOT + +![SNAPSHOT](./snapshot.png) + +## LICENSE + +MIT diff --git a/AccountSettings/jsconfig.json b/AccountSettings/jsconfig.json new file mode 100644 index 00000000..f87334d4 --- /dev/null +++ b/AccountSettings/jsconfig.json @@ -0,0 +1,10 @@ +{ + "compilerOptions": { + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "baseUrl": ".", + "paths": { + "@/*": ["./src/*"] + } + } +} diff --git a/AccountSettings/package.json b/AccountSettings/package.json new file mode 100644 index 00000000..8901d45c --- /dev/null +++ b/AccountSettings/package.json @@ -0,0 +1,25 @@ +{ + "name": "@umi-block/account-settings", + "version": "0.0.1", + "description": "AccountSettings", + "main": "src/index.js", + "scripts": { + "dev": "umi dev" + }, + "repository": { + "type": "git", + "url": "https://github.com/umijs/umi-blocks/ant-design-pro/accountsettings" + }, + "dependencies": { + "antd": "^3.10.9", + "dva": "^2.4.0", + "react": "^16.6.3", + "umi-request": "^1.0.0" + }, + "devDependencies": { + "umi": "^2.3.0-beta.1", + "umi-plugin-block-dev": "^1.0.0", + "umi-plugin-react": "^1.3.0-beta.1" + }, + "license": "ISC" +} diff --git a/AccountSettings/snapshot.png b/AccountSettings/snapshot.png new file mode 100644 index 0000000000000000000000000000000000000000..a4f5f1c375689badbf56331fb7e11dc39f4513ae GIT binary patch literal 89293 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�laAfZJgo=5~Z~`+BcZ* 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�Bgq zv=%uu$PjX$#nY`16di(f2iD# zaOq^(xV(|p%Af>9k3%o8ypK8Kq>^zYB;V6H)+o8<_@ zI)MmKl(VA(Sru(TCp8)sG#*`Dn`;J%F|^F;$HSo7a-L4$Y}#n=PVH}5U^a7pvq1aONadv zGj=9F8+G26vFaTmG~G$>(yPrFcM~q%eN;vKicc&yI`R!VehK_q2{J!F;RT!-7YM^Rn~gGZU26K>SLRt zb!~ksH!^BS_>S#XXz<|80wJyv2CiA$3uOH_s9T+Gs81uvs{zdstK(as#l;%O-Ue2* zKGX^CMC>$^!{{$B^c9KvsS@QV3hnA*s*qq`=OsaeHAK8Ex{xw&@nUSdCWDsj7N5_~ z1}t(H+0Pb4OGsIOS%egVBD-)dY<$h)`C-kxq-#ME1GW^G+O(QZG#c@hS5jQNt?bC82;-jybLO zcJ+12<~sBH{5(9>OPZKb1`W*EEqd<)ZI>0IjcY&)jjW&w*dCXE6Ov!FD;J?%)l>X^(Z{*8ajymDall| z*3G8A_?py%AG6z|@WyA+l+roMgw&i(kwvE}|Z7v@5;GtO|~tZHsBQ zd_6=&ok!I5biN3hYlF}qqJjobXns#w8V1dox5>_Aa=v8VF{xjlPcH=*(CkdxmbpxW zDaF@FD%QZr5I0Br-r{`kKPFsA0F zUqp#b&a_S2$Ir|&7HKoyb$0b4WmJMX2Y0#B)w~|r#(DX>`cWqY#ukrXQ>F6xSu^%5 z4^fESzsFMxf`9g~QCH&R4cnVZQwqVxdxJl`$Y^mJbAkjHT{3dGA4~&ZXs}PPozqrI zu+-=D*q!7W^8z7U{GFU>et45^;7ty&)&GQ;~iYJ{vwd66X8HOx+LYhO`$_}Iyv%T1x; zZAx2$`m(I$@%Hwp5&zx>w_;<1-wa0KlSSo<*jcCb$#6 z?XP}<=S4vMyEIAvkADDYe~06D{3)U)@J^VIUm?$V8^Aq2l&(G6823b00wkKmx3h5>E7l>|sQG!r84~aGk6E=lj3d*#?~Bv@k`zK9!(w&ugHMLhI@>%vL?~rM>keT8_&8?>en&iTkv`u@5WuKN?Jy3cHQ z68+>9I)z~*G388$Uw2RF=-*2D{fPe~A?|96%Gf98B(Om+2w2rSjz2TOaCp$25dO#U z!O5A15pZ|VWpZtK>j7}YVxz{Xilb=NG|lB%W+LcvV#@oMi7`j`T$7^xX?R}`$nwNv ze&H`)r3g?&X-_NFk}1}u*uwLP&qv9rsIKusP_uGsIAS>L3IY|4q8 z`3IHv-x2ot5V`D!R@q6+1YKGoPABhkgt~-90+wA|+!juE+Pn;yS8!!+P*FBH&S$fsRv+G2LY}(R(gFF4T z9PZ(PG%sWk#=wGPXW@>gcJ$y8yrovAeYR;%ZHcnkG8eva9V(%SI00w;!j>BRiCG%a zYh<_8B!iKflB2ao^1WL0zc7xIFVH{;!g4eS(XKE&+N`{tjrlC{jvZ=3$Z^VqI}-L; z&M><`OC;^|-0DcX2Ki}n#3PVl3Pa(qF|+TwGnQ!zC5YVDefpNZE_9XZRMN#W0qgj| zUvE|_h+Ma@-v2BoxZ!S}0`hq%>20r>_%BziUF3iG_!|UC#){tsn=hxAxgtFO_gwh> zNG=q=wrFRO!D3UVuI1(W55}>{UE(|cqBCW_Ug;?z)*fnjc8sj9c>le0nEfaS1DgA{IpiG%VB7pn3^iY0q?epYdl zLL1w!6cQ|{y;wW_L1EGU=lDQ=eZpbHV)uKt;GKyOx0)){;k6)xiK#)|Nrf}OPet*b KLb1H*lm7uk+v{rp literal 0 HcmV?d00001 diff --git a/AccountSettings/src/_mock.js b/AccountSettings/src/_mock.js new file mode 100644 index 00000000..6533a338 --- /dev/null +++ b/AccountSettings/src/_mock.js @@ -0,0 +1,66 @@ +import city from './geographic/city.json'; +import province from './geographic/province.json'; + +function getProvince(req, res) { + return res.json(province); +} + +function getCity(req, res) { + return res.json(city[req.params.province]); +} +// 代码中会兼容本地 service mock 以及部署站点的静态数据 +export default { + // 支持值为 Object 和 Array + 'GET /api/BLOCK_NAME/currentUser': { + name: 'Serati Ma', + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png', + userid: '00000001', + email: 'antdesign@alipay.com', + signature: '海纳百川,有容乃大', + title: '交互专家', + group: '蚂蚁金服-某某某事业群-某某平台部-某某技术部-UED', + tags: [ + { + key: '0', + label: '很有想法的', + }, + { + key: '1', + label: '专注设计', + }, + { + key: '2', + label: '辣~', + }, + { + key: '3', + label: '大长腿', + }, + { + key: '4', + label: '川妹子', + }, + { + key: '5', + label: '海纳百川', + }, + ], + notifyCount: 12, + unreadCount: 11, + country: 'China', + geographic: { + province: { + label: '浙江省', + key: '330000', + }, + city: { + label: '杭州市', + key: '330100', + }, + }, + address: '西湖区工专路 77 号', + phone: '0752-268888888', + }, + 'GET /api/BLOCK_NAME/province': getProvince, + 'GET /api/BLOCK_NAME/city/:province': getCity, +}; diff --git a/src/pages/Account/Settings/BaseView.less b/AccountSettings/src/components/BaseView.less similarity index 100% rename from src/pages/Account/Settings/BaseView.less rename to AccountSettings/src/components/BaseView.less diff --git a/src/pages/Account/Settings/GeographicView.js b/AccountSettings/src/components/GeographicView.js similarity index 85% rename from src/pages/Account/Settings/GeographicView.js rename to AccountSettings/src/components/GeographicView.js index d33cb138..c5274b7c 100644 --- a/src/pages/Account/Settings/GeographicView.js +++ b/AccountSettings/src/components/GeographicView.js @@ -10,19 +10,19 @@ const nullSlectItem = { key: '', }; -@connect(({ geographic }) => { - const { province, isLoading, city } = geographic; +@connect(({ BLOCK_NAME_CAMEL_CASE, loading }) => { + const { province, city } = BLOCK_NAME_CAMEL_CASE; return { province, city, - isLoading, + loading: loading.models.BLOCK_NAME_CAMEL_CASE, }; }) class GeographicView extends PureComponent { componentDidMount = () => { const { dispatch } = this.props; dispatch({ - type: 'geographic/fetchProvince', + type: 'BLOCK_NAME_CAMEL_CASE/fetchProvince', }); }; @@ -31,7 +31,7 @@ class GeographicView extends PureComponent { if (!props.value && !!value && !!value.province) { dispatch({ - type: 'geographic/fetchCity', + type: 'BLOCK_NAME_CAMEL_CASE/fetchCity', payload: value.province.key, }); } @@ -65,7 +65,7 @@ class GeographicView extends PureComponent { selectProvinceItem = item => { const { dispatch, onChange } = this.props; dispatch({ - type: 'geographic/fetchCity', + type: 'BLOCK_NAME_CAMEL_CASE/fetchCity', payload: item.key, }); onChange({ @@ -99,9 +99,9 @@ class GeographicView extends PureComponent { render() { const { province, city } = this.conversionObject(); - const { isLoading } = this.props; + const { loading } = this.props; return ( - + )} - + {getFieldDecorator('name', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.nickname-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.nickname-message' }, {}), }, ], })()} - + {getFieldDecorator('profile', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.profile-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.profile-message' }, {}), }, ], })( )} - + {getFieldDecorator('country', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.country-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.country-message' }, {}), }, ], })( @@ -139,12 +138,12 @@ class BaseView extends Component { )} - + {getFieldDecorator('geographic', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.geographic-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.geographic-message' }, {}), }, { validator: validatorGeographic, @@ -152,22 +151,22 @@ class BaseView extends Component { ], })()} - + {getFieldDecorator('address', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.address-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.address-message' }, {}), }, ], })()} - + {getFieldDecorator('phone', { rules: [ { required: true, - message: formatMessage({ id: 'app.settings.basic.phone-message' }, {}), + message: formatMessage({ id: 'BLOCK_NAME.basic.phone-message' }, {}), }, { validator: validatorPhone }, ], @@ -175,7 +174,7 @@ class BaseView extends Component { diff --git a/src/pages/Account/Settings/BindingView.js b/AccountSettings/src/components/binding.js similarity index 59% rename from src/pages/Account/Settings/BindingView.js rename to AccountSettings/src/components/binding.js index 29a29890..c95eca62 100644 --- a/src/pages/Account/Settings/BindingView.js +++ b/AccountSettings/src/components/binding.js @@ -5,31 +5,31 @@ import { Icon, List } from 'antd'; class BindingView extends Component { getData = () => [ { - title: formatMessage({ id: 'app.settings.binding.taobao' }, {}), - description: formatMessage({ id: 'app.settings.binding.taobao-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.binding.taobao' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.binding.taobao-description' }, {}), actions: [ - + , ], avatar: , }, { - title: formatMessage({ id: 'app.settings.binding.alipay' }, {}), - description: formatMessage({ id: 'app.settings.binding.alipay-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.binding.alipay' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.binding.alipay-description' }, {}), actions: [ - + , ], avatar: , }, { - title: formatMessage({ id: 'app.settings.binding.dingding' }, {}), - description: formatMessage({ id: 'app.settings.binding.dingding-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.binding.dingding' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.binding.dingding-description' }, {}), actions: [ - + , ], avatar: , diff --git a/src/pages/Account/Settings/NotificationView.js b/AccountSettings/src/components/notification.js similarity index 55% rename from src/pages/Account/Settings/NotificationView.js rename to AccountSettings/src/components/notification.js index 96677bbd..b61eac3e 100644 --- a/src/pages/Account/Settings/NotificationView.js +++ b/AccountSettings/src/components/notification.js @@ -6,25 +6,25 @@ class NotificationView extends Component { getData = () => { const Action = ( ); return [ { - title: formatMessage({ id: 'app.settings.notification.password' }, {}), - description: formatMessage({ id: 'app.settings.notification.password-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.notification.password' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.notification.password-description' }, {}), actions: [Action], }, { - title: formatMessage({ id: 'app.settings.notification.messages' }, {}), - description: formatMessage({ id: 'app.settings.notification.messages-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.notification.messages' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.notification.messages-description' }, {}), actions: [Action], }, { - title: formatMessage({ id: 'app.settings.notification.todo' }, {}), - description: formatMessage({ id: 'app.settings.notification.todo-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.notification.todo' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.notification.todo-description' }, {}), actions: [Action], }, ]; diff --git a/src/pages/Account/Settings/SecurityView.js b/AccountSettings/src/components/security.js similarity index 50% rename from src/pages/Account/Settings/SecurityView.js rename to AccountSettings/src/components/security.js index 0706bd0b..96685c0f 100644 --- a/src/pages/Account/Settings/SecurityView.js +++ b/AccountSettings/src/components/security.js @@ -6,17 +6,17 @@ import { List } from 'antd'; const passwordStrength = { strong: ( - + ), medium: ( - + ), weak: ( - + Weak ), @@ -25,58 +25,58 @@ const passwordStrength = { class SecurityView extends Component { getData = () => [ { - title: formatMessage({ id: 'app.settings.security.password' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.security.password' }, {}), description: ( - {formatMessage({ id: 'app.settings.security.password-description' })}: + {formatMessage({ id: 'BLOCK_NAME.security.password-description' })}: {passwordStrength.strong} ), actions: [ - + , ], }, { - title: formatMessage({ id: 'app.settings.security.phone' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.security.phone' }, {}), description: `${formatMessage( - { id: 'app.settings.security.phone-description' }, + { id: 'BLOCK_NAME.security.phone-description' }, {} )}:138****8293`, actions: [ - + , ], }, { - title: formatMessage({ id: 'app.settings.security.question' }, {}), - description: formatMessage({ id: 'app.settings.security.question-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.security.question' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.security.question-description' }, {}), actions: [ - + , ], }, { - title: formatMessage({ id: 'app.settings.security.email' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.security.email' }, {}), description: `${formatMessage( - { id: 'app.settings.security.email-description' }, + { id: 'BLOCK_NAME.security.email-description' }, {} )}:ant***sign.com`, actions: [ - + , ], }, { - title: formatMessage({ id: 'app.settings.security.mfa' }, {}), - description: formatMessage({ id: 'app.settings.security.mfa-description' }, {}), + title: formatMessage({ id: 'BLOCK_NAME.security.mfa' }, {}), + description: formatMessage({ id: 'BLOCK_NAME.security.mfa-description' }, {}), actions: [ - + , ], }, diff --git a/mock/geographic/city.json b/AccountSettings/src/geographic/city.json similarity index 100% rename from mock/geographic/city.json rename to AccountSettings/src/geographic/city.json diff --git a/mock/geographic/province.json b/AccountSettings/src/geographic/province.json similarity index 100% rename from mock/geographic/province.json rename to AccountSettings/src/geographic/province.json diff --git a/AccountSettings/src/index.js b/AccountSettings/src/index.js new file mode 100644 index 00000000..32985cfe --- /dev/null +++ b/AccountSettings/src/index.js @@ -0,0 +1,137 @@ +import React, { Component } from 'react'; +import { connect } from 'dva'; +import { FormattedMessage } from 'umi/locale'; +import { Menu } from 'antd'; +import styles from './style.less'; +import BaseView from './components/base'; +import SecurityView from './components/security'; +import BindingView from './components/binding'; +import NotificationView from './components/notification'; + +const { Item } = Menu; + +@connect(({ BLOCK_NAME_CAMEL_CASE }) => ({ + currentUser: BLOCK_NAME_CAMEL_CASE.currentUser, +})) +class PAGE_NAME_UPPER_CAMEL_CASE extends Component { + constructor(props) { + super(props); + const menuMap = { + base: , + security: ( + + ), + binding: ( + + ), + notification: ( + + ), + }; + this.state = { + mode: 'inline', + menuMap, + selectKey: 'base', + }; + } + + componentDidMount() { + const { dispatch } = this.props; + dispatch({ + type: 'BLOCK_NAME_CAMEL_CASE/fetchCurrent', + }); + window.addEventListener('resize', this.resize); + this.resize(); + } + + componentWillUnmount() { + window.removeEventListener('resize', this.resize); + } + + getmenu = () => { + const { menuMap } = this.state; + return Object.keys(menuMap).map(item => {menuMap[item]}); + }; + + getRightTitle = () => { + const { selectKey, menuMap } = this.state; + return menuMap[selectKey]; + }; + + selectKey = ({ key }) => { + this.setState({ + selectKey: key, + }); + }; + + resize = () => { + if (!this.main) { + return; + } + requestAnimationFrame(() => { + if (!this.main) { + return; + } + let mode = 'inline'; + const { offsetWidth } = this.main; + if (this.main.offsetWidth < 641 && offsetWidth > 400) { + mode = 'horizontal'; + } + if (window.innerWidth < 768 && offsetWidth > 400) { + mode = 'horizontal'; + } + this.setState({ + mode, + }); + }); + }; + + renderChildren = () => { + const { selectKey } = this.state; + switch (selectKey) { + case 'base': + return ; + case 'security': + return ; + case 'binding': + return ; + case 'notification': + return ; + default: + break; + } + + return null; + }; + + render() { + const { currentUser } = this.props; + if (!currentUser.userid) { + return ''; + } + const { mode, selectKey } = this.state; + return ( +

    { + this.main = ref; + }} + > +
    + + {this.getmenu()} + +
    +
    +
    {this.getRightTitle()}
    + {this.renderChildren()} +
    +
    + ); + } +} + +export default PAGE_NAME_UPPER_CAMEL_CASE; diff --git a/AccountSettings/src/locales/en-US.js b/AccountSettings/src/locales/en-US.js new file mode 100644 index 00000000..aab0f68d --- /dev/null +++ b/AccountSettings/src/locales/en-US.js @@ -0,0 +1,60 @@ +export default { + 'BLOCK_NAME.menuMap.basic': 'Basic Settings', + 'BLOCK_NAME.menuMap.security': 'Security Settings', + 'BLOCK_NAME.menuMap.binding': 'Account Binding', + 'BLOCK_NAME.menuMap.notification': 'New Message Notification', + 'BLOCK_NAME.basic.avatar': 'Avatar', + 'BLOCK_NAME.basic.change-avatar': 'Change avatar', + 'BLOCK_NAME.basic.email': 'Email', + 'BLOCK_NAME.basic.email-message': 'Please input your email!', + 'BLOCK_NAME.basic.nickname': 'Nickname', + 'BLOCK_NAME.basic.nickname-message': 'Please input your Nickname!', + 'BLOCK_NAME.basic.profile': 'Personal profile', + 'BLOCK_NAME.basic.profile-message': 'Please input your personal profile!', + 'BLOCK_NAME.basic.profile-placeholder': 'Brief introduction to yourself', + 'BLOCK_NAME.basic.country': 'Country/Region', + 'BLOCK_NAME.basic.country-message': 'Please input your country!', + 'BLOCK_NAME.basic.geographic': 'Province or city', + 'BLOCK_NAME.basic.geographic-message': 'Please input your geographic info!', + 'BLOCK_NAME.basic.address': 'Street Address', + 'BLOCK_NAME.basic.address-message': 'Please input your address!', + 'BLOCK_NAME.basic.phone': 'Phone Number', + 'BLOCK_NAME.basic.phone-message': 'Please input your phone!', + 'BLOCK_NAME.basic.update': 'Update Information', + 'BLOCK_NAME.security.strong': 'Strong', + 'BLOCK_NAME.security.medium': 'Medium', + 'BLOCK_NAME.security.weak': 'Weak', + 'BLOCK_NAME.security.password': 'Account Password', + 'BLOCK_NAME.security.password-description': 'Current password strength:', + 'BLOCK_NAME.security.phone': 'Security Phone', + 'BLOCK_NAME.security.phone-description': 'Bound phone:', + 'BLOCK_NAME.security.question': 'Security Question', + 'BLOCK_NAME.security.question-description': + 'The security question is not set, and the security policy can effectively protect the account security', + 'BLOCK_NAME.security.email': 'Backup Email', + 'BLOCK_NAME.security.email-description': 'Bound Email:', + 'BLOCK_NAME.security.mfa': 'MFA Device', + 'BLOCK_NAME.security.mfa-description': + 'Unbound MFA device, after binding, can be confirmed twice', + 'BLOCK_NAME.security.modify': 'Modify', + 'BLOCK_NAME.security.set': 'Set', + 'BLOCK_NAME.security.bind': 'Bind', + 'BLOCK_NAME.binding.taobao': 'Binding Taobao', + 'BLOCK_NAME.binding.taobao-description': 'Currently unbound Taobao account', + 'BLOCK_NAME.binding.alipay': 'Binding Alipay', + 'BLOCK_NAME.binding.alipay-description': 'Currently unbound Alipay account', + 'BLOCK_NAME.binding.dingding': 'Binding DingTalk', + 'BLOCK_NAME.binding.dingding-description': 'Currently unbound DingTalk account', + 'BLOCK_NAME.binding.bind': 'Bind', + 'BLOCK_NAME.notification.password': 'Account Password', + 'BLOCK_NAME.notification.password-description': + 'Messages from other users will be notified in the form of a station letter', + 'BLOCK_NAME.notification.messages': 'System Messages', + 'BLOCK_NAME.notification.messages-description': + 'System messages will be notified in the form of a station letter', + 'BLOCK_NAME.notification.todo': 'To-do Notification', + 'BLOCK_NAME.notification.todo-description': + 'The to-do list will be notified in the form of a letter from the station', + 'BLOCK_NAME.settings.open': 'Open', + 'BLOCK_NAME.settings.close': 'Close', +}; diff --git a/AccountSettings/src/locales/zh-CN.js b/AccountSettings/src/locales/zh-CN.js new file mode 100644 index 00000000..29c5674b --- /dev/null +++ b/AccountSettings/src/locales/zh-CN.js @@ -0,0 +1,55 @@ +export default { + 'BLOCK_NAME.menuMap.basic': '基本设置', + 'BLOCK_NAME.menuMap.security': '安全设置', + 'BLOCK_NAME.menuMap.binding': '账号绑定', + 'BLOCK_NAME.menuMap.notification': '新消息通知', + 'BLOCK_NAME.basic.avatar': '头像', + 'BLOCK_NAME.basic.change-avatar': '更换头像', + 'BLOCK_NAME.basic.email': '邮箱', + 'BLOCK_NAME.basic.email-message': '请输入您的邮箱!', + 'BLOCK_NAME.basic.nickname': '昵称', + 'BLOCK_NAME.basic.nickname-message': '请输入您的昵称!', + 'BLOCK_NAME.basic.profile': '个人简介', + 'BLOCK_NAME.basic.profile-message': '请输入个人简介!', + 'BLOCK_NAME.basic.profile-placeholder': '个人简介', + 'BLOCK_NAME.basic.country': '国家/地区', + 'BLOCK_NAME.basic.country-message': '请输入您的国家或地区!', + 'BLOCK_NAME.basic.geographic': '所在省市', + 'BLOCK_NAME.basic.geographic-message': '请输入您的所在省市!', + 'BLOCK_NAME.basic.address': '街道地址', + 'BLOCK_NAME.basic.address-message': '请输入您的街道地址!', + 'BLOCK_NAME.basic.phone': '联系电话', + 'BLOCK_NAME.basic.phone-message': '请输入您的联系电话!', + 'BLOCK_NAME.basic.update': '更新基本信息', + 'BLOCK_NAME.security.strong': '强', + 'BLOCK_NAME.security.medium': '中', + 'BLOCK_NAME.security.weak': '弱', + 'BLOCK_NAME.security.password': '账户密码', + 'BLOCK_NAME.security.password-description': '当前密码强度:', + 'BLOCK_NAME.security.phone': '密保手机', + 'BLOCK_NAME.security.phone-description': '已绑定手机:', + 'BLOCK_NAME.security.question': '密保问题', + 'BLOCK_NAME.security.question-description': '未设置密保问题,密保问题可有效保护账户安全', + 'BLOCK_NAME.security.email': '备用邮箱', + 'BLOCK_NAME.security.email-description': '已绑定邮箱:', + 'BLOCK_NAME.security.mfa': 'MFA 设备', + 'BLOCK_NAME.security.mfa-description': '未绑定 MFA 设备,绑定后,可以进行二次确认', + 'BLOCK_NAME.security.modify': '修改', + 'BLOCK_NAME.security.set': '设置', + 'BLOCK_NAME.security.bind': '绑定', + 'BLOCK_NAME.binding.taobao': '绑定淘宝', + 'BLOCK_NAME.binding.taobao-description': '当前未绑定淘宝账号', + 'BLOCK_NAME.binding.alipay': '绑定支付宝', + 'BLOCK_NAME.binding.alipay-description': '当前未绑定支付宝账号', + 'BLOCK_NAME.binding.dingding': '绑定钉钉', + 'BLOCK_NAME.binding.dingding-description': '当前未绑定钉钉账号', + 'BLOCK_NAME.binding.bind': '绑定', + 'BLOCK_NAME.notification.password': '账户密码', + 'BLOCK_NAME.notification.password-description': '其他用户的消息将以站内信的形式通知', + 'BLOCK_NAME.notification.messages': '系统消息', + 'BLOCK_NAME.notification.messages-description': '系统消息将以站内信的形式通知', + 'BLOCK_NAME.notification.todo': '待办任务', + 'BLOCK_NAME.notification.todo-description': '待办任务将以站内信的形式通知', + 'BLOCK_NAME.settings.open': '开', + 'BLOCK_NAME.settings.close': '关', +}; diff --git a/AccountSettings/src/locales/zh-TW.js b/AccountSettings/src/locales/zh-TW.js new file mode 100644 index 00000000..a65cf7e9 --- /dev/null +++ b/AccountSettings/src/locales/zh-TW.js @@ -0,0 +1,55 @@ +export default { + 'BLOCK_NAME.menuMap.basic': '基本設置', + 'BLOCK_NAME.menuMap.security': '安全設置', + 'BLOCK_NAME.menuMap.binding': '賬號綁定', + 'BLOCK_NAME.menuMap.notification': '新消息通知', + 'BLOCK_NAME.basic.avatar': '頭像', + 'BLOCK_NAME.basic.change-avatar': '更換頭像', + 'BLOCK_NAME.basic.email': '郵箱', + 'BLOCK_NAME.basic.email-message': '請輸入您的郵箱!', + 'BLOCK_NAME.basic.nickname': '昵稱', + 'BLOCK_NAME.basic.nickname-message': '請輸入您的昵稱!', + 'BLOCK_NAME.basic.profile': '個人簡介', + 'BLOCK_NAME.basic.profile-message': '請輸入個人簡介!', + 'BLOCK_NAME.basic.profile-placeholder': '個人簡介', + 'BLOCK_NAME.basic.country': '國家/地區', + 'BLOCK_NAME.basic.country-message': '請輸入您的國家或地區!', + 'BLOCK_NAME.basic.geographic': '所在省市', + 'BLOCK_NAME.basic.geographic-message': '請輸入您的所在省市!', + 'BLOCK_NAME.basic.address': '街道地址', + 'BLOCK_NAME.basic.address-message': '請輸入您的街道地址!', + 'BLOCK_NAME.basic.phone': '聯系電話', + 'BLOCK_NAME.basic.phone-message': '請輸入您的聯系電話!', + 'BLOCK_NAME.basic.update': '更新基本信息', + 'BLOCK_NAME.security.strong': '強', + 'BLOCK_NAME.security.medium': '中', + 'BLOCK_NAME.security.weak': '弱', + 'BLOCK_NAME.security.password': '賬戶密碼', + 'BLOCK_NAME.security.password-description': '當前密碼強度:', + 'BLOCK_NAME.security.phone': '密保手機', + 'BLOCK_NAME.security.phone-description': '已綁定手機:', + 'BLOCK_NAME.security.question': '密保問題', + 'BLOCK_NAME.security.question-description': '未設置密保問題,密保問題可有效保護賬戶安全', + 'BLOCK_NAME.security.email': '備用郵箱', + 'BLOCK_NAME.security.email-description': '已綁定郵箱:', + 'BLOCK_NAME.security.mfa': 'MFA 設備', + 'BLOCK_NAME.security.mfa-description': '未綁定 MFA 設備,綁定後,可以進行二次確認', + 'BLOCK_NAME.security.modify': '修改', + 'BLOCK_NAME.security.set': '設置', + 'BLOCK_NAME.security.bind': '綁定', + 'BLOCK_NAME.binding.taobao': '綁定淘寶', + 'BLOCK_NAME.binding.taobao-description': '當前未綁定淘寶賬號', + 'BLOCK_NAME.binding.alipay': '綁定支付寶', + 'BLOCK_NAME.binding.alipay-description': '當前未綁定支付寶賬號', + 'BLOCK_NAME.binding.dingding': '綁定釘釘', + 'BLOCK_NAME.binding.dingding-description': '當前未綁定釘釘賬號', + 'BLOCK_NAME.binding.bind': '綁定', + 'BLOCK_NAME.notification.password': '賬戶密碼', + 'BLOCK_NAME.notification.password-description': '其他用戶的消息將以站內信的形式通知', + 'BLOCK_NAME.notification.messages': '系統消息', + 'BLOCK_NAME.notification.messages-description': '系統消息將以站內信的形式通知', + 'BLOCK_NAME.notification.todo': '待辦任務', + 'BLOCK_NAME.notification.todo-description': '待辦任務將以站內信的形式通知', + 'BLOCK_NAME.settings.open': '開', + 'BLOCK_NAME.settings.close': '關', +}; diff --git a/src/pages/Account/Settings/models/geographic.js b/AccountSettings/src/model.js similarity index 50% rename from src/pages/Account/Settings/models/geographic.js rename to AccountSettings/src/model.js index a501920c..99fc23a3 100644 --- a/src/pages/Account/Settings/models/geographic.js +++ b/AccountSettings/src/model.js @@ -1,15 +1,30 @@ -import { queryProvince, queryCity } from '@/services/geographic'; +import { query as queryUsers, queryCurrent, queryProvince, queryCity } from './service'; export default { - namespace: 'geographic', + namespace: 'BLOCK_NAME_CAMEL_CASE', state: { + list: [], + currentUser: {}, province: [], city: [], - isLoading: false, }, effects: { + *fetch(_, { call, put }) { + const response = yield call(queryUsers); + yield put({ + type: 'save', + payload: response, + }); + }, + *fetchCurrent(_, { call, put }) { + const response = yield call(queryCurrent); + yield put({ + type: 'saveCurrentUser', + payload: response, + }); + }, *fetchProvince(_, { call, put }) { yield put({ type: 'changeLoading', @@ -20,29 +35,39 @@ export default { type: 'setProvince', payload: response, }); - yield put({ - type: 'changeLoading', - payload: false, - }); }, *fetchCity({ payload }, { call, put }) { - yield put({ - type: 'changeLoading', - payload: true, - }); const response = yield call(queryCity, payload); yield put({ type: 'setCity', payload: response, }); - yield put({ - type: 'changeLoading', - payload: false, - }); }, }, reducers: { + save(state, action) { + return { + ...state, + list: action.payload, + }; + }, + saveCurrentUser(state, action) { + return { + ...state, + currentUser: action.payload || {}, + }; + }, + changeNotifyCount(state, action) { + return { + ...state, + currentUser: { + ...state.currentUser, + notifyCount: action.payload.totalCount, + unreadCount: action.payload.unreadCount, + }, + }; + }, setProvince(state, action) { return { ...state, diff --git a/AccountSettings/src/service.js b/AccountSettings/src/service.js new file mode 100644 index 00000000..104bb1e9 --- /dev/null +++ b/AccountSettings/src/service.js @@ -0,0 +1,17 @@ +import request from 'umi-request'; + +export async function queryCurrent() { + return request('/api/BLOCK_NAME/currentUser'); +} + +export async function queryProvince() { + return request('/api/BLOCK_NAME/province'); +} + +export async function queryCity(province) { + return request(`/api/BLOCK_NAME/city/${province}`); +} + +export async function query() { + return request('/api/BLOCK_NAME/users'); +} diff --git a/src/pages/Account/Settings/Info.less b/AccountSettings/src/style.less similarity index 100% rename from src/pages/Account/Settings/Info.less rename to AccountSettings/src/style.less diff --git a/AdvancedForm/.gitignore b/AdvancedForm/.gitignore new file mode 100644 index 00000000..8ce76bc4 --- /dev/null +++ b/AdvancedForm/.gitignore @@ -0,0 +1,7 @@ +/yarn.lock +/package-lock.json +/dist +/node_modules + +.umi +.umi-production diff --git a/AdvancedForm/.umirc.js b/AdvancedForm/.umirc.js new file mode 100644 index 00000000..545b4c7a --- /dev/null +++ b/AdvancedForm/.umirc.js @@ -0,0 +1,12 @@ +export default { + plugins: [ + ['umi-plugin-block-dev', { + layout: 'ant-design-pro', + }], + ['umi-plugin-react', { + dva: true, + locale: true, + antd: true, + }] + ], +} diff --git a/AdvancedForm/README.md b/AdvancedForm/README.md new file mode 100644 index 00000000..cc9bfcbe --- /dev/null +++ b/AdvancedForm/README.md @@ -0,0 +1,17 @@ +# @umi-blocks/ant-design-pro/advancedform + +AdvancedForm + +## Usage + +```sh +umi block add ant-design-pro/advancedform +``` + +## SNAPSHOT + +![SNAPSHOT](./snapshot.png) + +## LICENSE + +MIT diff --git a/AdvancedForm/package.json b/AdvancedForm/package.json new file mode 100644 index 00000000..a26dc013 --- /dev/null +++ b/AdvancedForm/package.json @@ -0,0 +1,27 @@ +{ + "name": "@umi-block/advanced-form", + "version": "0.0.1", + "description": "AdvancedForm", + "main": "src/index.js", + "scripts": { + "dev": "umi dev" + }, + "repository": { + "type": "git", + "url": "https://github.com/umijs/umi-blocks/ant-design-pro/advancedform" + }, + "dependencies": { + "ant-design-pro": "^2.1.1", + "antd": "^3.10.9", + "dva": "^2.4.0", + "lodash": "^4.17.10", + "react": "^16.6.3", + "umi-request": "^1.0.0" + }, + "devDependencies": { + "umi": "^2.3.0-beta.1", + "umi-plugin-react": "^1.3.0-beta.1", + "umi-plugin-block-dev": "^1.0.0" + }, + "license": "ISC" +} diff --git a/AdvancedForm/snapshot.png b/AdvancedForm/snapshot.png new file mode 100644 index 0000000000000000000000000000000000000000..c6c31d206674a32f789305620dd9334a2dbdd935 GIT binary patch literal 68714 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 { + res.send({ message: 'Ok' }); + }, +}; diff --git a/AdvancedForm/src/components/PageHeaderWrapper/index.js b/AdvancedForm/src/components/PageHeaderWrapper/index.js new file mode 100644 index 00000000..c11873f2 --- /dev/null +++ b/AdvancedForm/src/components/PageHeaderWrapper/index.js @@ -0,0 +1,25 @@ +import React from 'react'; +import { FormattedMessage } from 'umi/locale'; +import Link from 'umi/link'; +import { PageHeader } from 'ant-design-pro'; +import styles from './index.less'; + +const PageHeaderWrapper = ({ children, wrapperClassName, ...restProps }) => ( +
    + } + key="pageheader" + {...restProps} + linkElement={Link} + itemRender={item => { + if (item.locale) { + return ; + } + return item.title; + }} + /> + {children ?
    {children}
    : null} +
    +); + +export default PageHeaderWrapper; diff --git a/src/components/PageHeaderWrapper/index.less b/AdvancedForm/src/components/PageHeaderWrapper/index.less similarity index 100% rename from src/components/PageHeaderWrapper/index.less rename to AdvancedForm/src/components/PageHeaderWrapper/index.less diff --git a/src/pages/Forms/TableForm.js b/AdvancedForm/src/components/TableForm.js similarity index 98% rename from src/pages/Forms/TableForm.js rename to AdvancedForm/src/components/TableForm.js index ae2723e7..66f941dc 100644 --- a/src/pages/Forms/TableForm.js +++ b/AdvancedForm/src/components/TableForm.js @@ -1,7 +1,7 @@ import React, { PureComponent, Fragment } from 'react'; import { Table, Button, Input, message, Popconfirm, Divider } from 'antd'; -import isEqual from 'lodash/isEqual'; -import styles from './style.less'; +import { isEqual } from 'lodash'; +import styles from '../style.less'; class TableForm extends PureComponent { index = 0; diff --git a/src/pages/Forms/AdvancedForm.js b/AdvancedForm/src/index.js similarity index 96% rename from src/pages/Forms/AdvancedForm.js rename to AdvancedForm/src/index.js index fbd39689..e2045c26 100644 --- a/src/pages/Forms/AdvancedForm.js +++ b/AdvancedForm/src/index.js @@ -13,9 +13,9 @@ import { Popover, } from 'antd'; import { connect } from 'dva'; -import FooterToolbar from '@/components/FooterToolbar'; -import PageHeaderWrapper from '@/components/PageHeaderWrapper'; -import TableForm from './TableForm'; +import { FooterToolbar } from 'ant-design-pro'; +import PageHeaderWrapper from './components/PageHeaderWrapper'; +import TableForm from './components/TableForm'; import styles from './style.less'; const { Option } = Select; @@ -58,10 +58,10 @@ const tableData = [ ]; @connect(({ loading }) => ({ - submitting: loading.effects['form/submitAdvancedForm'], + submitting: loading.effects['BLOCK_NAME_CAMEL_CASE/submitAdvancedForm'], })) @Form.create() -class AdvancedForm extends PureComponent { +class PAGE_NAME_UPPER_CAMEL_CASE extends PureComponent { state = { width: '100%', }; @@ -139,7 +139,7 @@ class AdvancedForm extends PureComponent { if (!error) { // submit the values dispatch({ - type: 'form/submitAdvancedForm', + type: 'BLOCK_NAME_CAMEL_CASE/submitAdvancedForm', payload: values, }); } @@ -320,4 +320,4 @@ class AdvancedForm extends PureComponent { } } -export default AdvancedForm; +export default PAGE_NAME_UPPER_CAMEL_CASE; diff --git a/AdvancedForm/src/locales/en-US.js b/AdvancedForm/src/locales/en-US.js new file mode 100644 index 00000000..3356dda0 --- /dev/null +++ b/AdvancedForm/src/locales/en-US.js @@ -0,0 +1,61 @@ +export default { + 'BLOCK_NAME.basic.title': 'Basic form', + 'BLOCK_NAME.basic.description': + 'Form pages are used to collect or verify information to users, and basic forms are common in scenarios where there are fewer data items.', + + 'BLOCK_NAME.email.required': 'Please enter your email!', + 'BLOCK_NAME.email.wrong-format': 'The email address is in the wrong format!', + 'BLOCK_NAME.userName.required': 'Please enter your userName!', + 'BLOCK_NAME.password.required': 'Please enter your password!', + 'BLOCK_NAME.password.twice': 'The passwords entered twice do not match!', + 'BLOCK_NAME.strength.msg': + "Please enter at least 6 characters and don't use passwords that are easy to guess.", + 'BLOCK_NAME.strength.strong': 'Strength: strong', + 'BLOCK_NAME.strength.medium': 'Strength: medium', + 'BLOCK_NAME.strength.short': 'Strength: too short', + 'BLOCK_NAME.confirm-password.required': 'Please confirm your password!', + 'BLOCK_NAME.phone-number.required': 'Please enter your phone number!', + 'BLOCK_NAME.phone-number.wrong-format': 'Malformed phone number!', + 'BLOCK_NAME.verification-code.required': 'Please enter the verification code!', + 'BLOCK_NAME.title.required': 'Please enter a title', + 'BLOCK_NAME.date.required': 'Please select the start and end date', + 'BLOCK_NAME.goal.required': 'Please enter a description of the goal', + 'BLOCK_NAME.standard.required': 'Please enter a metric', + + 'BLOCK_NAME.form.get-captcha': 'Get Captcha', + 'BLOCK_NAME.captcha.second': 'sec', + 'BLOCK_NAME.form.optional': ' (optional) ', + 'BLOCK_NAME.form.submit': 'Submit', + 'BLOCK_NAME.form.save': 'Save', + 'BLOCK_NAME.email.placeholder': 'Email', + 'BLOCK_NAME.password.placeholder': 'Password', + 'BLOCK_NAME.confirm-password.placeholder': 'Confirm password', + 'BLOCK_NAME.phone-number.placeholder': 'Phone number', + 'BLOCK_NAME.verification-code.placeholder': 'Verification code', + 'BLOCK_NAME.title.label': 'Title', + 'BLOCK_NAME.title.placeholder': 'Give the target a name', + 'BLOCK_NAME.date.label': 'Start and end date', + 'BLOCK_NAME.placeholder.start': 'Start date', + 'BLOCK_NAME.placeholder.end': 'End date', + 'BLOCK_NAME.goal.label': 'Goal description', + 'BLOCK_NAME.goal.placeholder': 'Please enter your work goals', + 'BLOCK_NAME.standard.label': 'Metrics', + 'BLOCK_NAME.standard.placeholder': 'Please enter a metric', + 'BLOCK_NAME.client.label': 'Client', + 'BLOCK_NAME.label.tooltip': 'Target service object', + 'BLOCK_NAME.client.placeholder': + 'Please describe your customer service, internal customers directly @ Name / job number', + 'BLOCK_NAME.invites.label': 'Inviting critics', + 'BLOCK_NAME.invites.placeholder': 'Please direct @ Name / job number, you can invite up to 5 people', + 'BLOCK_NAME.weight.label': 'Weight', + 'BLOCK_NAME.weight.placeholder': 'Please enter weight', + 'BLOCK_NAME.public.label': 'Target disclosure', + 'BLOCK_NAME.label.help': 'Customers and invitees are shared by default', + 'BLOCK_NAME.radio.public': 'Public', + 'BLOCK_NAME.radio.partially-public': 'Partially public', + 'BLOCK_NAME.radio.private': 'Private', + 'BLOCK_NAME.publicUsers.placeholder': 'Open to', + 'BLOCK_NAME.option.A': 'Colleague A', + 'BLOCK_NAME.option.B': 'Colleague B', + 'BLOCK_NAME.option.C': 'Colleague C', +}; diff --git a/AdvancedForm/src/locales/pt-BR.js b/AdvancedForm/src/locales/pt-BR.js new file mode 100644 index 00000000..1cc90131 --- /dev/null +++ b/AdvancedForm/src/locales/pt-BR.js @@ -0,0 +1,57 @@ +export default { + 'BLOCK_NAME.basic.title': 'Basic form', + 'BLOCK_NAME.basic.description': + 'Form pages are used to collect or verify information to users, and basic forms are common in scenarios where there are fewer data items.', + + 'BLOCK_NAME.email.required': 'Por favor insira seu email!', + 'BLOCK_NAME.email.wrong-format': 'O email está errado!', + 'BLOCK_NAME.userName.required': 'Por favor insira nome de usuário!', + 'BLOCK_NAME.password.required': 'Por favor insira sua senha!', + 'BLOCK_NAME.password.twice': 'As senhas não estão iguais!', + 'BLOCK_NAME.strength.msg': + 'Por favor insira pelo menos 6 caracteres e não use senhas fáceis de adivinhar.', + 'BLOCK_NAME.strength.strong': 'Força: forte', + 'BLOCK_NAME.strength.medium': 'Força: média', + 'BLOCK_NAME.strength.short': 'Força: curta', + 'BLOCK_NAME.confirm-password.required': 'Por favor confirme sua senha!', + 'BLOCK_NAME.phone-number.required': 'Por favor insira seu telefone!', + 'BLOCK_NAME.phone-number.wrong-format': 'Formato de telefone errado!', + 'BLOCK_NAME.verification-code.required': 'Por favor insira seu código de verificação!', + + 'BLOCK_NAME.form.get-captcha': 'Get Captcha', + 'BLOCK_NAME.captcha.second': 'sec', + 'BLOCK_NAME.email.placeholder': 'Email', + 'BLOCK_NAME.password.placeholder': 'Senha', + 'BLOCK_NAME.confirm-password.placeholder': 'Confirme a senha', + 'BLOCK_NAME.phone-number.placeholder': 'Telefone', + 'BLOCK_NAME.verification-code.placeholder': 'Código de verificação', + 'BLOCK_NAME.form.optional': ' (optional) ', + 'BLOCK_NAME.form.submit': 'Submit', + 'BLOCK_NAME.form.save': 'Save', + 'BLOCK_NAME.title.label': 'Title', + 'BLOCK_NAME.title.placeholder': 'Give the target a name', + 'BLOCK_NAME.date.label': 'Start and end date', + 'BLOCK_NAME.placeholder.start': 'Start date', + 'BLOCK_NAME.placeholder.end': 'End date', + 'BLOCK_NAME.goal.label': 'Goal description', + 'BLOCK_NAME.goal.placeholder': 'Please enter your work goals', + 'BLOCK_NAME.standard.label': 'Metrics', + 'BLOCK_NAME.standard.placeholder': 'Please enter a metric', + 'BLOCK_NAME.client.label': 'Client', + 'BLOCK_NAME.label.tooltip': 'Target service object', + 'BLOCK_NAME.client.placeholder': + 'Please describe your customer service, internal customers directly @ Name / job number', + 'BLOCK_NAME.invites.label': 'Inviting critics', + 'BLOCK_NAME.invites.placeholder': 'Please direct @ Name / job number, you can invite up to 5 people', + 'BLOCK_NAME.weight.label': 'Weight', + 'BLOCK_NAME.weight.placeholder': 'Please enter weight', + 'BLOCK_NAME.public.label': 'Target disclosure', + 'BLOCK_NAME.label.help': 'Customers and invitees are shared by default', + 'BLOCK_NAME.radio.public': 'Public', + 'BLOCK_NAME.radio.partially-public': 'Partially public', + 'BLOCK_NAME.radio.private': 'Private', + 'BLOCK_NAME.publicUsers.placeholder': 'Open to', + 'BLOCK_NAME.option.A': 'Colleague A', + 'BLOCK_NAME.option.B': 'Colleague B', + 'BLOCK_NAME.option.C': 'Colleague C', +}; diff --git a/AdvancedForm/src/locales/zh-CN.js b/AdvancedForm/src/locales/zh-CN.js new file mode 100644 index 00000000..d9a4b1de --- /dev/null +++ b/AdvancedForm/src/locales/zh-CN.js @@ -0,0 +1,59 @@ +export default { + 'BLOCK_NAME.basic.title': '基础表单', + 'BLOCK_NAME.basic.description': + '表单页用于向用户收集或验证信息,基础表单常见于数据项较少的表单场景。', + + 'BLOCK_NAME.email.required': '请输入邮箱地址!', + 'BLOCK_NAME.email.wrong-format': '邮箱地址格式错误!', + 'BLOCK_NAME.userName.required': '请输入用户名!', + 'BLOCK_NAME.password.required': '请输入密码!', + 'BLOCK_NAME.password.twice': '两次输入的密码不匹配!', + 'BLOCK_NAME.strength.msg': '请至少输入 6 个字符。请不要使用容易被猜到的密码。', + 'BLOCK_NAME.strength.strong': '强度:强', + 'BLOCK_NAME.strength.medium': '强度:中', + 'BLOCK_NAME.strength.short': '强度:太短', + 'BLOCK_NAME.confirm-password.required': '请确认密码!', + 'BLOCK_NAME.phone-number.required': '请输入手机号!', + 'BLOCK_NAME.phone-number.wrong-format': '手机号格式错误!', + 'BLOCK_NAME.verification-code.required': '请输入验证码!', + 'BLOCK_NAME.title.required': '请输入标题', + 'BLOCK_NAME.date.required': '请选择起止日期', + 'BLOCK_NAME.goal.required': '请输入目标描述', + 'BLOCK_NAME.standard.required': '请输入衡量标准', + + 'BLOCK_NAME.form.get-captcha': '获取验证码', + 'BLOCK_NAME.captcha.second': '秒', + 'BLOCK_NAME.form.optional': '(选填)', + 'BLOCK_NAME.form.submit': '提交', + 'BLOCK_NAME.form.save': '保存', + 'BLOCK_NAME.email.placeholder': '邮箱', + 'BLOCK_NAME.password.placeholder': '至少6位密码,区分大小写', + 'BLOCK_NAME.confirm-password.placeholder': '确认密码', + 'BLOCK_NAME.phone-number.placeholder': '手机号', + 'BLOCK_NAME.verification-code.placeholder': '验证码', + 'BLOCK_NAME.title.label': '标题', + 'BLOCK_NAME.title.placeholder': '给目标起个名字', + 'BLOCK_NAME.date.label': '起止日期', + 'BLOCK_NAME.placeholder.start': '开始日期', + 'BLOCK_NAME.placeholder.end': '结束日期', + 'BLOCK_NAME.goal.label': '目标描述', + 'BLOCK_NAME.goal.placeholder': '请输入你的阶段性工作目标', + 'BLOCK_NAME.standard.label': '衡量标准', + 'BLOCK_NAME.standard.placeholder': '请输入衡量标准', + 'BLOCK_NAME.client.label': '客户', + 'BLOCK_NAME.label.tooltip': '目标的服务对象', + 'BLOCK_NAME.client.placeholder': '请描述你服务的客户,内部客户直接 @姓名/工号', + 'BLOCK_NAME.invites.label': '邀评人', + 'BLOCK_NAME.invites.placeholder': '请直接 @姓名/工号,最多可邀请 5 人', + 'BLOCK_NAME.weight.label': '权重', + 'BLOCK_NAME.weight.placeholder': '请输入', + 'BLOCK_NAME.public.label': '目标公开', + 'BLOCK_NAME.label.help': '客户、邀评人默认被分享', + 'BLOCK_NAME.radio.public': '公开', + 'BLOCK_NAME.radio.partially-public': '部分公开', + 'BLOCK_NAME.radio.private': '不公开', + 'BLOCK_NAME.publicUsers.placeholder': '公开给', + 'BLOCK_NAME.option.A': '同事甲', + 'BLOCK_NAME.option.B': '同事乙', + 'BLOCK_NAME.option.C': '同事丙', +}; diff --git a/AdvancedForm/src/locales/zh-TW.js b/AdvancedForm/src/locales/zh-TW.js new file mode 100644 index 00000000..d42f8520 --- /dev/null +++ b/AdvancedForm/src/locales/zh-TW.js @@ -0,0 +1,59 @@ +export default { + 'BLOCK_NAME.basic.title': '基礎表單', + 'BLOCK_NAME.basic.description': + '表單頁用於向用戶收集或驗證信息,基礎表單常見於數據項較少的表單場景。', + + 'BLOCK_NAME.email.required': '請輸入郵箱地址!', + 'BLOCK_NAME.email.wrong-format': '郵箱地址格式錯誤!', + 'BLOCK_NAME.userName.required': '請輸入賬戶!', + 'BLOCK_NAME.password.required': '請輸入密碼!', + 'BLOCK_NAME.password.twice': '兩次輸入的密碼不匹配!', + 'BLOCK_NAME.strength.msg': '請至少輸入 6 個字符。請不要使用容易被猜到的密碼。', + 'BLOCK_NAME.strength.strong': '強度:強', + 'BLOCK_NAME.strength.medium': '強度:中', + 'BLOCK_NAME.strength.short': '強度:太短', + 'BLOCK_NAME.confirm-password.required': '請確認密碼!', + 'BLOCK_NAME.phone-number.required': '請輸入手機號!', + 'BLOCK_NAME.phone-number.wrong-format': '手機號格式錯誤!', + 'BLOCK_NAME.verification-code.required': '請輸入驗證碼!', + 'BLOCK_NAME.title.required': '請輸入標題', + 'BLOCK_NAME.date.required': '請選擇起止日期', + 'BLOCK_NAME.goal.required': '請輸入目標描述', + 'BLOCK_NAME.standard.required': '請輸入衡量標淮', + + 'BLOCK_NAME.form.get-captcha': '獲取驗證碼', + 'BLOCK_NAME.captcha.second': '秒', + 'BLOCK_NAME.form.optional': '(選填)', + 'BLOCK_NAME.form.submit': '提交', + 'BLOCK_NAME.form.save': '保存', + 'BLOCK_NAME.email.placeholder': '郵箱', + 'BLOCK_NAME.password.placeholder': '至少6位密碼,區分大小寫', + 'BLOCK_NAME.confirm-password.placeholder': '確認密碼', + 'BLOCK_NAME.phone-number.placeholder': '手機號', + 'BLOCK_NAME.verification-code.placeholder': '驗證碼', + 'BLOCK_NAME.title.label': '標題', + 'BLOCK_NAME.title.placeholder': '給目標起個名字', + 'BLOCK_NAME.date.label': '起止日期', + 'BLOCK_NAME.placeholder.start': '開始日期', + 'BLOCK_NAME.placeholder.end': '結束日期', + 'BLOCK_NAME.goal.label': '目標描述', + 'BLOCK_NAME.goal.placeholder': '請輸入妳的階段性工作目標', + 'BLOCK_NAME.standard.label': '衡量標淮', + 'BLOCK_NAME.standard.placeholder': '請輸入衡量標淮', + 'BLOCK_NAME.client.label': '客戶', + 'BLOCK_NAME.label.tooltip': '目標的服務對象', + 'BLOCK_NAME.client.placeholder': '請描述妳服務的客戶,內部客戶直接 @姓名/工號', + 'BLOCK_NAME.invites.label': '邀評人', + 'BLOCK_NAME.invites.placeholder': '請直接 @姓名/工號,最多可邀請 5 人', + 'BLOCK_NAME.weight.label': '權重', + 'BLOCK_NAME.weight.placeholder': '請輸入', + 'BLOCK_NAME.public.label': '目標公開', + 'BLOCK_NAME.label.help': '客戶、邀評人默認被分享', + 'BLOCK_NAME.radio.public': '公開', + 'BLOCK_NAME.radio.partially-public': '部分公開', + 'BLOCK_NAME.radio.private': '不公開', + 'BLOCK_NAME.publicUsers.placeholder': '公開給', + 'BLOCK_NAME.option.A': '同事甲', + 'BLOCK_NAME.option.B': '同事乙', + 'BLOCK_NAME.option.C': '同事丙', +}; diff --git a/AdvancedForm/src/model.js b/AdvancedForm/src/model.js new file mode 100644 index 00000000..d07e0193 --- /dev/null +++ b/AdvancedForm/src/model.js @@ -0,0 +1,15 @@ +import { message } from 'antd'; +import { fakeSubmitForm } from './service'; + +export default { + namespace: 'BLOCK_NAME_CAMEL_CASE', + + state: {}, + + effects: { + *submitAdvancedForm({ payload }, { call }) { + yield call(fakeSubmitForm, payload); + message.success('提交成功'); + }, + }, +}; diff --git a/AdvancedForm/src/service.js b/AdvancedForm/src/service.js new file mode 100644 index 00000000..77e522c8 --- /dev/null +++ b/AdvancedForm/src/service.js @@ -0,0 +1,8 @@ +import request from 'umi-request'; + +export async function fakeSubmitForm(params) { + return request('/api/BLOCK_NAME/forms', { + method: 'POST', + data: params, + }); +} diff --git a/src/pages/Forms/style.less b/AdvancedForm/src/style.less similarity index 100% rename from src/pages/Forms/style.less rename to AdvancedForm/src/style.less diff --git a/AdvancedProfile/.gitignore b/AdvancedProfile/.gitignore new file mode 100644 index 00000000..8ce76bc4 --- /dev/null +++ b/AdvancedProfile/.gitignore @@ -0,0 +1,7 @@ +/yarn.lock +/package-lock.json +/dist +/node_modules + +.umi +.umi-production diff --git a/AdvancedProfile/.umirc.js b/AdvancedProfile/.umirc.js new file mode 100644 index 00000000..545b4c7a --- /dev/null +++ b/AdvancedProfile/.umirc.js @@ -0,0 +1,12 @@ +export default { + plugins: [ + ['umi-plugin-block-dev', { + layout: 'ant-design-pro', + }], + ['umi-plugin-react', { + dva: true, + locale: true, + antd: true, + }] + ], +} diff --git a/AdvancedProfile/README.md b/AdvancedProfile/README.md new file mode 100644 index 00000000..9fde77c0 --- /dev/null +++ b/AdvancedProfile/README.md @@ -0,0 +1,17 @@ +# @umi-blocks/ant-design-pro/advancedprofile + +AdvancedProfile + +## Usage + +```sh +umi block add ant-design-pro/advancedprofile +``` + +## SNAPSHOT + +![SNAPSHOT](./snapshot.png) + +## LICENSE + +MIT diff --git a/AdvancedProfile/package.json b/AdvancedProfile/package.json new file mode 100644 index 00000000..65437eb6 --- /dev/null +++ b/AdvancedProfile/package.json @@ -0,0 +1,28 @@ +{ + "name": "@umi-block/advanced-profile", + "version": "0.0.1", + "description": "AdvancedProfile", + "main": "src/index.js", + "scripts": { + "dev": "umi dev" + }, + "repository": { + "type": "git", + "url": "https://github.com/umijs/umi-blocks/ant-design-pro/advancedprofile" + }, + "dependencies": { + "ant-design-pro": "^2.1.1", + "antd": "^3.10.9", + "classnames": "^2.2.6", + "dva": "^2.4.0", + "lodash-decorators": "^6.0.0", + "react": "^16.6.3", + "umi-request": "^1.0.0" + }, + "devDependencies": { + "umi": "^2.3.0-beta.1", + "umi-plugin-react": "^1.3.0-beta.1", + "umi-plugin-block-dev": "^1.0.0" + }, + "license": "ISC" +} diff --git a/AdvancedProfile/snapshot.png b/AdvancedProfile/snapshot.png new file mode 100644 index 0000000000000000000000000000000000000000..09173fd37a0ddcab8ee8a5429ee0d0d89e364798 GIT binary patch literal 99835 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 Ha)|mbnJY$; literal 0 HcmV?d00001 diff --git a/AdvancedProfile/src/_mock.js b/AdvancedProfile/src/_mock.js new file mode 100644 index 00000000..6a34f734 --- /dev/null +++ b/AdvancedProfile/src/_mock.js @@ -0,0 +1,74 @@ +const advancedOperation1 = [ + { + key: 'op1', + type: '订购关系生效', + name: '曲丽丽', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, + { + key: 'op2', + type: '财务复审', + name: '付小小', + status: 'reject', + updatedAt: '2017-10-03 19:23:12', + memo: '不通过原因', + }, + { + key: 'op3', + type: '部门初审', + name: '周毛毛', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, + { + key: 'op4', + type: '提交订单', + name: '林东东', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '很棒', + }, + { + key: 'op5', + type: '创建订单', + name: '汗牙牙', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +const advancedOperation2 = [ + { + key: 'op1', + type: '订购关系生效', + name: '曲丽丽', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +const advancedOperation3 = [ + { + key: 'op1', + type: '创建订单', + name: '汗牙牙', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +const getProfileAdvancedData = { + advancedOperation1, + advancedOperation2, + advancedOperation3, +}; + +export default { + 'GET /api/BLOCK_NAME/advanced': getProfileAdvancedData, +}; diff --git a/AdvancedProfile/src/components/PageHeaderWrapper/index.js b/AdvancedProfile/src/components/PageHeaderWrapper/index.js new file mode 100644 index 00000000..165ae252 --- /dev/null +++ b/AdvancedProfile/src/components/PageHeaderWrapper/index.js @@ -0,0 +1,26 @@ +import React from 'react'; +import { FormattedMessage } from 'umi/locale'; +import Link from 'umi/link'; +import { PageHeader } from 'ant-design-pro'; +import styles from './index.less'; + +const PageHeaderWrapper = ({ children, contentWidth, wrapperClassName, top, ...restProps }) => ( +
    + } + key="pageheader" + {...restProps} + linkElement={Link} + itemRender={item => { + if (item.locale) { + return ; + } + return item.title; + }} + /> + {children ?
    {children}
    : null} +
    +); + +export default PageHeaderWrapper; diff --git a/AdvancedProfile/src/components/PageHeaderWrapper/index.less b/AdvancedProfile/src/components/PageHeaderWrapper/index.less new file mode 100644 index 00000000..39a44965 --- /dev/null +++ b/AdvancedProfile/src/components/PageHeaderWrapper/index.less @@ -0,0 +1,11 @@ +@import '~antd/lib/style/themes/default.less'; + +.content { + margin: 24px 24px 0; +} + +@media screen and (max-width: @screen-sm) { + .content { + margin: 24px 0 0; + } +} diff --git a/src/pages/Profile/AdvancedProfile.js b/AdvancedProfile/src/index.js similarity index 94% rename from src/pages/Profile/AdvancedProfile.js rename to AdvancedProfile/src/index.js index 0006f993..341c0aa3 100644 --- a/src/pages/Profile/AdvancedProfile.js +++ b/AdvancedProfile/src/index.js @@ -18,9 +18,9 @@ import { Divider, } from 'antd'; import classNames from 'classnames'; -import DescriptionList from '@/components/DescriptionList'; -import PageHeaderWrapper from '@/components/PageHeaderWrapper'; -import styles from './AdvancedProfile.less'; +import { DescriptionList } from 'ant-design-pro'; +import PageHeaderWrapper from './components/PageHeaderWrapper'; +import styles from './style.less'; const { Step } = Steps; const { Description } = DescriptionList; @@ -180,11 +180,11 @@ const columns = [ }, ]; -@connect(({ profile, loading }) => ({ - profile, - loading: loading.effects['profile/fetchAdvanced'], +@connect(({ BLOCK_NAME_CAMEL_CASE, loading }) => ({ + BLOCK_NAME_CAMEL_CASE, + loading: loading.effects['BLOCK_NAME_CAMEL_CASE/fetchAdvanced'], })) -class AdvancedProfile extends Component { +class PAGE_NAME_UPPER_CAMEL_CASE extends Component { state = { operationkey: 'tab1', stepDirection: 'horizontal', @@ -193,7 +193,7 @@ class AdvancedProfile extends Component { componentDidMount() { const { dispatch } = this.props; dispatch({ - type: 'profile/fetchAdvanced', + type: 'BLOCK_NAME_CAMEL_CASE/fetchAdvanced', }); this.setStepDirection(); @@ -227,8 +227,8 @@ class AdvancedProfile extends Component { render() { const { stepDirection, operationkey } = this.state; - const { profile, loading } = this.props; - const { advancedOperation1, advancedOperation2, advancedOperation3 } = profile; + const { BLOCK_NAME_CAMEL_CASE, loading } = this.props; + const { advancedOperation1, advancedOperation2, advancedOperation3 } = BLOCK_NAME_CAMEL_CASE; const contentList = { tab1: ( cw{1rP2X+%33UaQDXF=G=47 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 z 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 ( } + title={} action={ } + title={} > @@ -33,18 +34,18 @@ const IntroduceRow = memo(({ loading, visitData }) => ( total={() => 126560} footer={ } + label={} value={`¥${numeral(12423).format('0,0')}`} /> } contentHeight={46} > - + 12% - + 11% @@ -54,10 +55,10 @@ const IntroduceRow = memo(({ loading, visitData }) => ( } + title={} action={ } + title={} > @@ -65,7 +66,7 @@ const IntroduceRow = memo(({ loading, visitData }) => ( total={numeral(8846).format('0,0')} footer={ } + label={} value={numeral(1234).format('0,0')} /> } @@ -78,10 +79,10 @@ const IntroduceRow = memo(({ loading, visitData }) => ( } + title={} action={ } + title={} > @@ -91,7 +92,7 @@ const IntroduceRow = memo(({ loading, visitData }) => ( } @@ -109,13 +110,13 @@ const IntroduceRow = memo(({ loading, visitData }) => ( bordered={false} title={ } action={ } + title={} > @@ -124,11 +125,11 @@ const IntroduceRow = memo(({ loading, visitData }) => ( footer={
    - + 12% - + 11%
    diff --git a/src/pages/Dashboard/OfflineData.js b/Analysis/src/components/OfflineData.js similarity index 80% rename from src/pages/Dashboard/OfflineData.js rename to Analysis/src/components/OfflineData.js index f7d06ef0..274c1e0d 100755 --- a/src/pages/Dashboard/OfflineData.js +++ b/Analysis/src/components/OfflineData.js @@ -1,9 +1,10 @@ import React, { memo } from 'react'; import { Card, Tabs, Row, Col } from 'antd'; import { formatMessage, FormattedMessage } from 'umi/locale'; -import styles from './Analysis.less'; -import { TimelineChart, Pie } from '@/components/Charts'; -import NumberInfo from '@/components/NumberInfo'; +import { Charts, NumberInfo } from 'ant-design-pro'; +import styles from '../style.less'; + +const { TimelineChart, Pie } = Charts; const CustomTab = ({ data, currentTabKey: currentKey }) => ( @@ -11,7 +12,7 @@ const CustomTab = ({ data, currentTabKey: currentKey }) => ( + } gap={2} total={`${data.cvr * 100}%`} @@ -50,8 +51,8 @@ const OfflineData = memo( height={400} data={offlineChartData} titleMap={{ - y1: formatMessage({ id: 'app.analysis.traffic' }), - y2: formatMessage({ id: 'app.analysis.payments' }), + y1: formatMessage({ id: 'BLOCK_NAME.analysis.traffic' }), + y2: formatMessage({ id: 'BLOCK_NAME.analysis.payments' }), }} /> diff --git a/src/components/PageLoading/index.js b/Analysis/src/components/PageLoading/index.js similarity index 100% rename from src/components/PageLoading/index.js rename to Analysis/src/components/PageLoading/index.js diff --git a/Analysis/src/components/ProportionSales.js b/Analysis/src/components/ProportionSales.js new file mode 100755 index 00000000..51d44be2 --- /dev/null +++ b/Analysis/src/components/ProportionSales.js @@ -0,0 +1,65 @@ +import React, { memo } from 'react'; +import { Card, Radio } from 'antd'; +import { Charts } from 'ant-design-pro'; +import { FormattedMessage } from 'umi/locale'; +import styles from '../style.less'; +import Yuan from '../utils/Yuan'; + +const { Pie } = Charts; + +const ProportionSales = memo( + ({ dropdownGroup, salesType, loading, salesPieData, handleChangeSalesType }) => ( + + } + bodyStyle={{ padding: 24 }} + extra={ +
    + {dropdownGroup} +
    + + + + + + + + + + + +
    +
    + } + style={{ marginTop: 24 }} + > +
    +

    + +

    + } + total={() => {salesPieData.reduce((pre, now) => now.y + pre, 0)}} + data={salesPieData} + valueFormat={value => {value}} + height={248} + lineWidth={4} + /> +
    +
    + ) +); + +export default ProportionSales; diff --git a/src/pages/Dashboard/SalesCard.js b/Analysis/src/components/SalesCard.js similarity index 82% rename from src/pages/Dashboard/SalesCard.js rename to Analysis/src/components/SalesCard.js index 3ab57775..893314eb 100755 --- a/src/pages/Dashboard/SalesCard.js +++ b/Analysis/src/components/SalesCard.js @@ -2,8 +2,10 @@ import React, { memo } from 'react'; import { Row, Col, Card, Tabs, DatePicker } from 'antd'; import { FormattedMessage, formatMessage } from 'umi/locale'; import numeral from 'numeral'; -import styles from './Analysis.less'; -import { Bar } from '@/components/Charts'; +import { Charts } from 'ant-design-pro'; +import styles from '../style.less'; + +const { Bar } = Charts; const { RangePicker } = DatePicker; const { TabPane } = Tabs; @@ -11,7 +13,7 @@ const { TabPane } = Tabs; const rankingListData = []; for (let i = 0; i < 7; i += 1) { rankingListData.push({ - title: formatMessage({ id: 'app.analysis.test' }, { no: i }), + title: formatMessage({ id: 'BLOCK_NAME.analysis.test' }, { no: i }), total: 323234, }); } @@ -25,16 +27,16 @@ const SalesCard = memo(
    } + tab={} key="sales" > @@ -58,7 +60,7 @@ const SalesCard = memo( height={295} title={ } @@ -70,7 +72,7 @@ const SalesCard = memo(

    @@ -96,7 +98,7 @@ const SalesCard = memo( } + tab={} key="views" > @@ -106,7 +108,7 @@ const SalesCard = memo( height={292} title={ } @@ -118,7 +120,7 @@ const SalesCard = memo(

    diff --git a/src/pages/Dashboard/TopSearch.js b/Analysis/src/components/TopSearch.js similarity index 69% rename from src/pages/Dashboard/TopSearch.js rename to Analysis/src/components/TopSearch.js index 4e75ea7d..9946b2ad 100755 --- a/src/pages/Dashboard/TopSearch.js +++ b/Analysis/src/components/TopSearch.js @@ -1,35 +1,35 @@ import React, { memo } from 'react'; import { Row, Col, Table, Tooltip, Card, Icon } from 'antd'; import { FormattedMessage } from 'umi/locale'; -import Trend from '@/components/Trend'; +import { Trend, NumberInfo, Charts } from 'ant-design-pro'; import numeral from 'numeral'; -import styles from './Analysis.less'; -import NumberInfo from '@/components/NumberInfo'; -import { MiniArea } from '@/components/Charts'; +import styles from '../style.less'; + +const { MiniArea } = Charts; const columns = [ { - title: , + title: , dataIndex: 'index', key: 'index', }, { title: ( - + ), dataIndex: 'keyword', key: 'keyword', render: text => {text}, }, { - title: , + title: , dataIndex: 'count', key: 'count', sorter: (a, b) => a.count - b.count, className: styles.alignRight, }, { - title: , + title: , dataIndex: 'range', key: 'range', sorter: (a, b) => a.range - b.range, @@ -47,7 +47,7 @@ const TopSearch = memo(({ loading, visitData2, searchData, dropdownGroup }) => ( loading={loading} bordered={false} title={ - + } extra={dropdownGroup} style={{ marginTop: 24 }} @@ -57,9 +57,9 @@ const TopSearch = memo(({ loading, visitData2, searchData, dropdownGroup }) => ( - + } + title={} > @@ -77,11 +77,11 @@ const TopSearch = memo(({ loading, visitData2, searchData, dropdownGroup }) => ( subTitle={ } + title={} > diff --git a/src/pages/Dashboard/Analysis.js b/Analysis/src/index.js similarity index 62% rename from src/pages/Dashboard/Analysis.js rename to Analysis/src/index.js index 0b85db70..d175e701 100644 --- a/src/pages/Dashboard/Analysis.js +++ b/Analysis/src/index.js @@ -2,23 +2,22 @@ import React, { Component, Suspense } from 'react'; import { connect } from 'dva'; import { Row, Col, Icon, Menu, Dropdown } from 'antd'; -import GridContent from '@/components/PageHeaderWrapper/GridContent'; -import { getTimeDistance } from '@/utils/utils'; +import { getTimeDistance } from './utils/utils'; -import styles from './Analysis.less'; -import PageLoading from '@/components/PageLoading'; +import styles from './style.less'; +import PageLoading from './components/PageLoading'; -const IntroduceRow = React.lazy(() => import('./IntroduceRow')); -const SalesCard = React.lazy(() => import('./SalesCard')); -const TopSearch = React.lazy(() => import('./TopSearch')); -const ProportionSales = React.lazy(() => import('./ProportionSales')); -const OfflineData = React.lazy(() => import('./OfflineData')); +const IntroduceRow = React.lazy(() => import('./components/IntroduceRow')); +const SalesCard = React.lazy(() => import('./components/SalesCard')); +const TopSearch = React.lazy(() => import('./components/TopSearch')); +const ProportionSales = React.lazy(() => import('./components/ProportionSales')); +const OfflineData = React.lazy(() => import('./components/OfflineData')); -@connect(({ chart, loading }) => ({ - chart, - loading: loading.effects['chart/fetch'], +@connect(({ BLOCK_NAME_CAMEL_CASE, loading }) => ({ + BLOCK_NAME_CAMEL_CASE, + loading: loading.effects['BLOCK_NAME_CAMEL_CASE/fetch'], })) -class Analysis extends Component { +class PAGE_NAME_UPPER_CAMEL_CASE extends Component { state = { salesType: 'all', currentTabKey: '', @@ -29,7 +28,7 @@ class Analysis extends Component { const { dispatch } = this.props; this.reqRef = requestAnimationFrame(() => { dispatch({ - type: 'chart/fetch', + type: 'BLOCK_NAME_CAMEL_CASE/fetch', }); }); } @@ -37,7 +36,7 @@ class Analysis extends Component { componentWillUnmount() { const { dispatch } = this.props; dispatch({ - type: 'chart/clear', + type: 'BLOCK_NAME_CAMEL_CASE/clear', }); cancelAnimationFrame(this.reqRef); clearTimeout(this.timeoutId); @@ -62,7 +61,7 @@ class Analysis extends Component { }); dispatch({ - type: 'chart/fetchSalesData', + type: 'BLOCK_NAME_CAMEL_CASE/fetchSalesData', }); }; @@ -73,7 +72,7 @@ class Analysis extends Component { }); dispatch({ - type: 'chart/fetchSalesData', + type: 'BLOCK_NAME_CAMEL_CASE/fetchSalesData', }); }; @@ -94,7 +93,7 @@ class Analysis extends Component { render() { const { rangePickerValue, salesType, currentTabKey } = this.state; - const { chart, loading } = this.props; + const { BLOCK_NAME_CAMEL_CASE, loading } = this.props; const { visitData, visitData2, @@ -105,7 +104,7 @@ class Analysis extends Component { salesTypeData, salesTypeDataOnline, salesTypeDataOffline, - } = chart; + } = BLOCK_NAME_CAMEL_CASE; let salesPieData; if (salesType === 'all') { salesPieData = salesTypeData; @@ -130,7 +129,7 @@ class Analysis extends Component { const activeKey = currentTabKey || (offlineData[0] && offlineData[0].name); return ( - + }> @@ -144,32 +143,30 @@ class Analysis extends Component { selectDate={this.selectDate} /> -
    - -
    - - - - - - - - - - - + + + + + + + + + + + + - + ); } } -export default Analysis; +export default PAGE_NAME_UPPER_CAMEL_CASE; diff --git a/Analysis/src/locales/en-US.js b/Analysis/src/locales/en-US.js new file mode 100644 index 00000000..dc611a18 --- /dev/null +++ b/Analysis/src/locales/en-US.js @@ -0,0 +1,34 @@ +export default { + 'BLOCK_NAME.analysis.test': 'Gongzhuan No.{no} shop', + 'BLOCK_NAME.analysis.introduce': 'Introduce', + 'BLOCK_NAME.analysis.total-sales': 'Total Sales', + 'BLOCK_NAME.analysis.day-sales': 'Daily Sales', + 'BLOCK_NAME.analysis.visits': 'Visits', + 'BLOCK_NAME.analysis.visits-trend': 'Visits Trend', + 'BLOCK_NAME.analysis.visits-ranking': 'Visits Ranking', + 'BLOCK_NAME.analysis.day-visits': 'Daily Visits', + 'BLOCK_NAME.analysis.week': 'WoW Change', + 'BLOCK_NAME.analysis.day': 'DoD Change', + 'BLOCK_NAME.analysis.payments': 'Payments', + 'BLOCK_NAME.analysis.conversion-rate': 'Conversion Rate', + 'BLOCK_NAME.analysis.operational-effect': 'Operational Effect', + 'BLOCK_NAME.analysis.sales-trend': 'Stores Sales Trend', + 'BLOCK_NAME.analysis.sales-ranking': 'Sales Ranking', + 'BLOCK_NAME.analysis.all-year': 'All Year', + 'BLOCK_NAME.analysis.all-month': 'All Month', + 'BLOCK_NAME.analysis.all-week': 'All Week', + 'BLOCK_NAME.analysis.all-day': 'All day', + 'BLOCK_NAME.analysis.search-users': 'Search Users', + 'BLOCK_NAME.analysis.per-capita-search': 'Per Capita Search', + 'BLOCK_NAME.analysis.online-top-search': 'Online Top Search', + 'BLOCK_NAME.analysis.the-proportion-of-sales': 'The Proportion Of Sales', + 'BLOCK_NAME.channel.all': 'ALL', + 'BLOCK_NAME.channel.online': 'Online', + 'BLOCK_NAME.channel.stores': 'Stores', + 'BLOCK_NAME.analysis.sales': 'Sales', + 'BLOCK_NAME.analysis.traffic': 'Traffic', + 'BLOCK_NAME.table.rank': 'Rank', + 'BLOCK_NAME.table.search-keyword': 'Keyword', + 'BLOCK_NAME.table.users': 'Users', + 'BLOCK_NAME.table.weekly-range': 'Weekly Range', +}; diff --git a/Analysis/src/locales/pt-BR.js b/Analysis/src/locales/pt-BR.js new file mode 100644 index 00000000..ead8d959 --- /dev/null +++ b/Analysis/src/locales/pt-BR.js @@ -0,0 +1,34 @@ +export default { + 'BLOCK_NAME.analysis.test': 'Gongzhuan No.{no} shop', + 'BLOCK_NAME.analysis.introduce': 'Introduzir', + 'BLOCK_NAME.analysis.total-sales': 'Vendas Totais', + 'BLOCK_NAME.analysis.day-sales': 'Vendas do Dia', + 'BLOCK_NAME.analysis.visits': 'Visitas', + 'BLOCK_NAME.analysis.visits-trend': 'Tendência de Visitas', + 'BLOCK_NAME.analysis.visits-ranking': 'Ranking de Visitas', + 'BLOCK_NAME.analysis.day-visits': 'Visitas do Dia', + 'BLOCK_NAME.analysis.week': 'Taxa Semanal', + 'BLOCK_NAME.analysis.day': 'Taxa Diária', + 'BLOCK_NAME.analysis.payments': 'Pagamentos', + 'BLOCK_NAME.analysis.conversion-rate': 'Taxa de Conversão', + 'BLOCK_NAME.analysis.operational-effect': 'Efeito Operacional', + 'BLOCK_NAME.analysis.sales-trend': 'Tendência de Vendas das Lojas', + 'BLOCK_NAME.analysis.sales-ranking': 'Ranking de Vendas', + 'BLOCK_NAME.$2': 'Todo ano', + 'BLOCK_NAME.analysis.all-month': 'Todo mês', + 'BLOCK_NAME.analysis.all-week': 'Toda semana', + 'BLOCK_NAME.analysis.all-day': 'Todo dia', + 'BLOCK_NAME.analysis.search-users': 'Pesquisa de Usuários', + 'BLOCK_NAME.analysis.per-capita-search': 'Busca Per Capta', + 'BLOCK_NAME.analysis.online-top-search': 'Mais Buscadas Online', + 'BLOCK_NAME.analysis.the-proportion-of-sales': 'The Proportion Of Sales', + 'BLOCK_NAME.channel.all': 'Tudo', + 'BLOCK_NAME.channel.online': 'Online', + 'BLOCK_NAME.channel.stores': 'Lojas', + 'BLOCK_NAME.analysis.sales': 'Vendas', + 'BLOCK_NAME.analysis.traffic': 'Tráfego', + 'BLOCK_NAME.table.rank': 'Rank', + 'BLOCK_NAME.table.search-keyword': 'Palavra chave', + 'BLOCK_NAME.table.users': 'Usuários', + 'BLOCK_NAME.table.weekly-range': 'Faixa Semanal', +}; diff --git a/Analysis/src/locales/zh-CN.js b/Analysis/src/locales/zh-CN.js new file mode 100644 index 00000000..1c1620ef --- /dev/null +++ b/Analysis/src/locales/zh-CN.js @@ -0,0 +1,34 @@ +export default { + 'BLOCK_NAME.analysis.test': '工专路 {no} 号店', + 'BLOCK_NAME.analysis.introduce': '指标说明', + 'BLOCK_NAME.analysis.total-sales': '总销售额', + 'BLOCK_NAME.analysis.day-sales': '日销售额', + 'BLOCK_NAME.analysis.visits': '访问量', + 'BLOCK_NAME.analysis.visits-trend': '访问量趋势', + 'BLOCK_NAME.analysis.visits-ranking': '门店访问量排名', + 'BLOCK_NAME.analysis.day-visits': '日访问量', + 'BLOCK_NAME.analysis.week': '周同比', + 'BLOCK_NAME.analysis.day': '日同比', + 'BLOCK_NAME.analysis.payments': '支付笔数', + 'BLOCK_NAME.analysis.conversion-rate': '转化率', + 'BLOCK_NAME.analysis.operational-effect': '运营活动效果', + 'BLOCK_NAME.analysis.sales-trend': '销售趋势', + 'BLOCK_NAME.analysis.sales-ranking': '门店销售额排名', + 'BLOCK_NAME.analysis.all-year': '全年', + 'BLOCK_NAME.analysis.all-month': '本月', + 'BLOCK_NAME.analysis.all-week': '本周', + 'BLOCK_NAME.analysis.all-day': '今日', + 'BLOCK_NAME.analysis.search-users': '搜索用户数', + 'BLOCK_NAME.analysis.per-capita-search': '人均搜索次数', + 'BLOCK_NAME.analysis.online-top-search': '线上热门搜索', + 'BLOCK_NAME.analysis.the-proportion-of-sales': '销售额类别占比', + 'BLOCK_NAME.channel.all': '全部渠道', + 'BLOCK_NAME.channel.online': '线上', + 'BLOCK_NAME.channel.stores': '门店', + 'BLOCK_NAME.analysis.sales': '销售额', + 'BLOCK_NAME.analysis.traffic': '客流量', + 'BLOCK_NAME.table.rank': '排名', + 'BLOCK_NAME.table.search-keyword': '搜索关键词', + 'BLOCK_NAME.table.users': '用户数', + 'BLOCK_NAME.table.weekly-range': '周涨幅', +}; diff --git a/Analysis/src/locales/zh-TW.js b/Analysis/src/locales/zh-TW.js new file mode 100644 index 00000000..2238e441 --- /dev/null +++ b/Analysis/src/locales/zh-TW.js @@ -0,0 +1,34 @@ +export default { + 'BLOCK_NAME.analysis.test': '工專路 {no} 號店', + 'BLOCK_NAME.analysis.introduce': '指標說明', + 'BLOCK_NAME.analysis.total-sales': '總銷售額', + 'BLOCK_NAME.analysis.day-sales': '日銷售額', + 'BLOCK_NAME.analysis.visits': '訪問量', + 'BLOCK_NAME.analysis.visits-trend': '訪問量趨勢', + 'BLOCK_NAME.analysis.visits-ranking': '門店訪問量排名', + 'BLOCK_NAME.analysis.day-visits': '日訪問量', + 'BLOCK_NAME.analysis.week': '周同比', + 'BLOCK_NAME.analysis.day': '日同比', + 'BLOCK_NAME.analysis.payments': '支付筆數', + 'BLOCK_NAME.analysis.conversion-rate': '轉化率', + 'BLOCK_NAME.analysis.operational-effect': '運營活動效果', + 'BLOCK_NAME.analysis.sales-trend': '銷售趨勢', + 'BLOCK_NAME.analysis.sales-ranking': '門店銷售額排名', + 'BLOCK_NAME.analysis.all-year': '全年', + 'BLOCK_NAME.analysis.all-month': '本月', + 'BLOCK_NAME.analysis.all-week': '本周', + 'BLOCK_NAME.analysis.all-day': '今日', + 'BLOCK_NAME.analysis.search-users': '搜索用戶數', + 'BLOCK_NAME.analysis.per-capita-search': '人均搜索次數', + 'BLOCK_NAME.analysis.online-top-search': '線上熱門搜索', + 'BLOCK_NAME.analysis.the-proportion-of-sales': '銷售額類別占比', + 'BLOCK_NAME.channel.all': '全部渠道', + 'BLOCK_NAME.channel.online': '線上', + 'BLOCK_NAME.channel.stores': '門店', + 'BLOCK_NAME.analysis.sales': '銷售額', + 'BLOCK_NAME.analysis.traffic': '客流量', + 'BLOCK_NAME.table.rank': '排名', + 'BLOCK_NAME.table.search-keyword': '搜索關鍵詞', + 'BLOCK_NAME.table.users': '用戶數', + 'BLOCK_NAME.table.weekly-range': '周漲幅', +}; diff --git a/src/pages/Dashboard/models/chart.js b/Analysis/src/model.js similarity index 93% rename from src/pages/Dashboard/models/chart.js rename to Analysis/src/model.js index 8dfe4a93..4e062cc3 100644 --- a/src/pages/Dashboard/models/chart.js +++ b/Analysis/src/model.js @@ -1,7 +1,7 @@ -import { fakeChartData } from '@/services/api'; +import { fakeChartData } from './service'; export default { - namespace: 'chart', + namespace: 'BLOCK_NAME_CAMEL_CASE', state: { visitData: [], diff --git a/Analysis/src/service.js b/Analysis/src/service.js new file mode 100644 index 00000000..65a1eb21 --- /dev/null +++ b/Analysis/src/service.js @@ -0,0 +1,5 @@ +import request from 'umi-request'; + +export async function fakeChartData() { + return request('/api/BLOCK_NAME/fake_chart_data'); +} diff --git a/src/pages/Dashboard/Analysis.less b/Analysis/src/style.less similarity index 89% rename from src/pages/Dashboard/Analysis.less rename to Analysis/src/style.less index 70877d66..4df48a03 100644 --- a/src/pages/Dashboard/Analysis.less +++ b/Analysis/src/style.less @@ -1,5 +1,5 @@ @import '~antd/lib/style/themes/default.less'; -@import '~@/utils/utils.less'; +@import './utils/utils.less'; .iconGroup { i { @@ -134,25 +134,6 @@ } } -.twoColLayout { - .salesCard { - height: calc(100% - 24px); - } - div[class^='ant-col']:last-child { - right: 0\9; - height: 100%\9; - position: absolute\9; - } - :global { - .ant-row { - display: flex; - display: block\9; - flex-flow: row wrap; - position: relative\9; - } - } -} - .trendText { margin-left: 8px; color: @heading-color; diff --git a/src/utils/Yuan.js b/Analysis/src/utils/Yuan.js similarity index 90% rename from src/utils/Yuan.js rename to Analysis/src/utils/Yuan.js index 434a57fb..415e9557 100644 --- a/src/utils/Yuan.js +++ b/Analysis/src/utils/Yuan.js @@ -1,5 +1,5 @@ import React from 'react'; -import { yuan } from '@/components/Charts'; +import { yuan } from 'ant-design-pro/lib/Charts'; /** * 减少使用 dangerouslySetInnerHTML */ diff --git a/Analysis/src/utils/utils.js b/Analysis/src/utils/utils.js new file mode 100644 index 00000000..6e77bd48 --- /dev/null +++ b/Analysis/src/utils/utils.js @@ -0,0 +1,50 @@ +import moment from 'moment'; + +export function fixedZero(val) { + return val * 1 < 10 ? `0${val}` : val; +} + +export function getTimeDistance(type) { + const now = new Date(); + const oneDay = 1000 * 60 * 60 * 24; + + if (type === 'today') { + now.setHours(0); + now.setMinutes(0); + now.setSeconds(0); + return [moment(now), moment(now.getTime() + (oneDay - 1000))]; + } + + if (type === 'week') { + let day = now.getDay(); + now.setHours(0); + now.setMinutes(0); + now.setSeconds(0); + + if (day === 0) { + day = 6; + } else { + day -= 1; + } + + const beginTime = now.getTime() - day * oneDay; + + return [moment(beginTime), moment(beginTime + (7 * oneDay - 1000))]; + } + + if (type === 'month') { + const year = now.getFullYear(); + const month = now.getMonth(); + const nextDate = moment(now).add(1, 'months'); + const nextYear = nextDate.year(); + const nextMonth = nextDate.month(); + + return [ + moment(`${year}-${fixedZero(month + 1)}-01 00:00:00`), + moment(moment(`${nextYear}-${fixedZero(nextMonth + 1)}-01 00:00:00`).valueOf() - 1000), + ]; + } + + const year = now.getFullYear(); + return [moment(`${year}-01-01 00:00:00`), moment(`${year}-12-31 23:59:59`)]; +} diff --git a/src/utils/utils.less b/Analysis/src/utils/utils.less similarity index 100% rename from src/utils/utils.less rename to Analysis/src/utils/utils.less diff --git a/BasicForm/.gitignore b/BasicForm/.gitignore new file mode 100644 index 00000000..8ce76bc4 --- /dev/null +++ b/BasicForm/.gitignore @@ -0,0 +1,7 @@ +/yarn.lock +/package-lock.json +/dist +/node_modules + +.umi +.umi-production diff --git a/BasicForm/.umirc.js b/BasicForm/.umirc.js new file mode 100644 index 00000000..545b4c7a --- /dev/null +++ b/BasicForm/.umirc.js @@ -0,0 +1,12 @@ +export default { + plugins: [ + ['umi-plugin-block-dev', { + layout: 'ant-design-pro', + }], + ['umi-plugin-react', { + dva: true, + locale: true, + antd: true, + }] + ], +} diff --git a/BasicForm/README.md b/BasicForm/README.md new file mode 100644 index 00000000..69953537 --- /dev/null +++ b/BasicForm/README.md @@ -0,0 +1,17 @@ +# @umi-blocks/ant-design-pro/basicform + +BasicForm + +## Usage + +```sh +umi block add ant-design-pro/basicform +``` + +## SNAPSHOT + +![SNAPSHOT](./snapshot.png) + +## LICENSE + +MIT diff --git a/BasicForm/package.json b/BasicForm/package.json new file mode 100644 index 00000000..1f96d53f --- /dev/null +++ b/BasicForm/package.json @@ -0,0 +1,26 @@ +{ + "name": "@umi-block/basic-form", + "version": "0.0.1", + "description": "BasicForm", + "main": "src/index.js", + "scripts": { + "dev": "umi dev" + }, + "repository": { + "type": "git", + "url": "https://github.com/umijs/umi-blocks/ant-design-pro/basicform" + }, + "dependencies": { + "ant-design-pro": "^2.1.1", + "antd": "^3.10.9", + "dva": "^2.4.0", + "react": "^16.6.3", + "umi-request": "^1.0.0" + }, + "devDependencies": { + "umi": "^2.3.0-beta.1", + "umi-plugin-react": "^1.3.0-beta.1", + "umi-plugin-block-dev": "^1.0.0" + }, + "license": "ISC" +} diff --git a/BasicForm/snapshot.png b/BasicForm/snapshot.png new file mode 100644 index 0000000000000000000000000000000000000000..587cbcbf72eeda1e384d233af0dee728274922b3 GIT binary patch literal 59712 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 { + res.send({ message: 'Ok' }); + }, +}; diff --git a/BasicForm/src/components/PageHeaderWrapper/index.js b/BasicForm/src/components/PageHeaderWrapper/index.js new file mode 100644 index 00000000..c11873f2 --- /dev/null +++ b/BasicForm/src/components/PageHeaderWrapper/index.js @@ -0,0 +1,25 @@ +import React from 'react'; +import { FormattedMessage } from 'umi/locale'; +import Link from 'umi/link'; +import { PageHeader } from 'ant-design-pro'; +import styles from './index.less'; + +const PageHeaderWrapper = ({ children, wrapperClassName, ...restProps }) => ( +
    + } + key="pageheader" + {...restProps} + linkElement={Link} + itemRender={item => { + if (item.locale) { + return ; + } + return item.title; + }} + /> + {children ?
    {children}
    : null} +
    +); + +export default PageHeaderWrapper; diff --git a/BasicForm/src/components/PageHeaderWrapper/index.less b/BasicForm/src/components/PageHeaderWrapper/index.less new file mode 100644 index 00000000..39a44965 --- /dev/null +++ b/BasicForm/src/components/PageHeaderWrapper/index.less @@ -0,0 +1,11 @@ +@import '~antd/lib/style/themes/default.less'; + +.content { + margin: 24px 24px 0; +} + +@media screen and (max-width: @screen-sm) { + .content { + margin: 24px 0 0; + } +} diff --git a/src/pages/Forms/BasicForm.js b/BasicForm/src/index.js similarity index 66% rename from src/pages/Forms/BasicForm.js rename to BasicForm/src/index.js index 55833150..bdef2fee 100644 --- a/src/pages/Forms/BasicForm.js +++ b/BasicForm/src/index.js @@ -13,7 +13,7 @@ import { Icon, Tooltip, } from 'antd'; -import PageHeaderWrapper from '@/components/PageHeaderWrapper'; +import PageHeaderWrapper from './components/PageHeaderWrapper'; import styles from './style.less'; const FormItem = Form.Item; @@ -22,17 +22,17 @@ const { RangePicker } = DatePicker; const { TextArea } = Input; @connect(({ loading }) => ({ - submitting: loading.effects['form/submitRegularForm'], + submitting: loading.effects['BLOCK_NAME_CAMEL_CASE/submitRegularForm'], })) @Form.create() -class BasicForms extends PureComponent { +class PAGE_NAME_UPPER_CAMEL_CASE extends PureComponent { handleSubmit = e => { const { dispatch, form } = this.props; e.preventDefault(); form.validateFieldsAndScroll((err, values) => { if (!err) { dispatch({ - type: 'form/submitRegularForm', + type: 'BLOCK_NAME_CAMEL_CASE/submitRegularForm', payload: values, }); } @@ -66,67 +66,67 @@ class BasicForms extends PureComponent { return ( } - content={} + title={} + content={} >
    - }> + }> {getFieldDecorator('title', { rules: [ { required: true, - message: formatMessage({ id: 'validation.title.required' }), + message: formatMessage({ id: 'BLOCK_NAME.title.required' }), }, ], - })()} + })()} - }> + }> {getFieldDecorator('date', { rules: [ { required: true, - message: formatMessage({ id: 'validation.date.required' }), + message: formatMessage({ id: 'BLOCK_NAME.date.required' }), }, ], })( )} - }> + }> {getFieldDecorator('goal', { rules: [ { required: true, - message: formatMessage({ id: 'validation.goal.required' }), + message: formatMessage({ id: 'BLOCK_NAME.goal.required' }), }, ], })(