From c480b3c255fbe9e1e80f2da1d77a816f4ddb19e5 Mon Sep 17 00:00:00 2001 From: wwj <664027523@qq.com> Date: Tue, 8 Aug 2023 03:42:01 -0700 Subject: [PATCH 1/5] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=B8=BB=E9=A2=98?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../toolkits/pro/template/tinyng/package.json | 4 +- .../@core/services/custom-theme.service.ts | 16 +- .../app/@core/services/personalize.service.ts | 38 +- .../components/footer/footer.component.scss | 9 +- .../header-left-menu.component.html | 30 +- .../header-left-menu.component.scss | 36 +- .../header-logo/header-logo.component.html | 12 +- .../header-logo/header-logo.component.scss | 13 +- .../header-notice.component.scss | 23 +- .../header-operation.component.scss | 12 +- .../components/header/header.component.scss | 2 +- .../components/helptip/helptip.component.scss | 2 +- .../components/layouts/layout.component.scss | 14 +- .../components/login/login.component.html | 2 +- .../components/login/login.component.scss | 2 +- .../multi-settings.component.html | 2 +- .../multi-settings.component.scss | 7 +- .../side-settings.component.scss | 15 +- .../personalize-config.component.html | 2 +- .../personalize-config.component.scss | 21 +- .../personalize-config.component.ts | 14 +- .../personalize/personalize.component.html | 82 ++- .../personalize/personalize.component.scss | 170 +++--- .../personalize/personalize.component.ts | 35 +- .../register/register.component.html | 2 +- .../side-menu/side-menu.component.scss | 19 +- .../tinyng/src/app/@shared/models/theme.ts | 110 +++- .../modules/dropdown/dropdown.component.scss | 37 +- .../tinyng/src/app/@shared/styles/common.scss | 22 +- .../tinyng/src/app/app-routing.module.ts | 9 +- .../console-home/console-home.component.scss | 11 +- .../beginner-guide.component.scss | 19 +- .../marketplace-all-svg.component.html | 18 +- .../marketplace/marketplace.component.scss | 13 +- .../recommendation.component.scss | 118 ++-- .../recommendation.component.spec.ts | 5 +- .../resource-groups.component.scss | 15 +- .../side-advertise.component.scss | 4 +- .../side-announcement.component.scss | 18 +- .../user-info-head.component.scss | 39 +- .../user-info-panel.component.scss | 7 +- .../non-support-content.component.scss | 54 +- .../tinyng/src/app/pages/pages.component.html | 1 + .../tinyng/src/app/pages/pages.component.scss | 13 + .../recommend-activity.component.scss | 5 +- .../result-failure.component.html | 4 +- .../result-failure.component.scss | 11 +- .../result-success.component.html | 2 +- .../result-success.component.scss | 9 +- .../bucket-list/bucket-list.component.scss | 9 +- .../bucket-list/bucket-list.component.ts | 24 +- .../contracts/contracts.component.scss | 12 +- .../contracts/contracts.component.ts | 13 +- .../pages/service-list/service-list.module.ts | 4 +- .../contracts-modal.component.scss | 10 +- .../contracts-table.component.scss | 50 +- .../contracts-table.component.ts | 16 +- .../obs-table/obs-table.component.scss | 44 +- .../obs-table/obs-table.component.ts | 35 +- .../list-guide-head.component.scss | 26 +- .../growth-map/growth-map.component.scss | 13 +- .../service-creation.component.scss | 7 +- .../service-introduce.component.scss | 3 +- .../service-purchase.component.scss | 25 +- .../buy-layer/buy-layer.component.scss | 7 + .../region-select.component.scss | 5 + .../service-configuration.component.scss | 6 +- .../service-image.component.scss | 19 +- .../src/assets/i18n/en-US/console-home.ts | 8 + .../src/assets/i18n/en-US/personalize.ts | 10 +- .../src/assets/i18n/zh-CN/console-home.ts | 8 + .../src/assets/i18n/zh-CN/personalize.ts | 9 +- .../tinyng/src/assets/img/console.svg | 14 + .../tinyng/src/assets/img/favicon.ico | Bin 453 -> 547 bytes .../tinyng/src/assets/img/opentiny-logo.svg | 55 +- .../tinyng/src/assets/img/page-logo.svg | 15 + .../tinyng/src/assets/img/person-bg.png | Bin 0 -> 61229 bytes .../tinyng/src/assets/img/real-name.png | Bin 1835 -> 2646 bytes .../template/tinyng/src/assets/img/set-up.png | Bin 2720 -> 637 bytes .../template/tinyng/src/assets/img/theme.png | Bin 0 -> 3865 bytes .../assets/styles/theme/tiny-dark-theme-1.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-2.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-3.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-4.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-5.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-6.css | 70 +++ .../assets/styles/theme/tiny-dark-theme-7.css | 70 +++ .../assets/styles/theme/tiny-dark-theme.css | 91 ++- .../assets/styles/theme/tiny-deep-theme.css | 55 +- .../assets/styles/theme/tiny-hws-theme.css | 576 ++---------------- .../styles/theme/tiny-light-theme-1.css | 40 ++ .../styles/theme/tiny-light-theme-2.css | 40 ++ .../styles/theme/tiny-light-theme-3.css | 40 ++ .../styles/theme/tiny-light-theme-4.css | 40 ++ .../styles/theme/tiny-light-theme-5.css | 40 ++ .../styles/theme/tiny-light-theme-6.css | 40 ++ .../styles/theme/tiny-light-theme-7.css | 40 ++ .../styles/theme/tiny-light-theme-8.css | 40 ++ .../styles/theme/tiny-provence-theme.css | 55 +- .../assets/styles/theme/tiny-sweet-theme.css | 51 +- .../pro/template/tinyng/src/index.html | 3 +- .../pro/template/tinyng/src/polyfills.ts | 19 +- .../pro/template/tinyng/tsconfig.json | 22 +- .../toolkits/pro/template/tinyvue/.env.pages | 1 + .../tinyvue/config/plugin/arcoResolver.ts | 19 + .../config/vite.config.preview.base.ts | 66 ++ .../tinyvue/config/vite.config.preview.dev.ts | 22 + .../config/vite.config.preview.prod.ts | 29 + .../toolkits/pro/template/tinyvue/src/App.vue | 4 + .../tinyvue/src/assets/images/avatar.png | Bin 0 -> 20133 bytes .../tinyvue/src/assets/images/blue-bg.png | Bin 0 -> 194406 bytes .../src/assets/images/opentiny-logo.png | Bin 0 -> 6905 bytes .../src/assets/images/opentiny-logo.svg | 20 + .../tinyvue/src/assets/style/menu.less | 11 +- .../tinyvue/src/components/menu/index.vue | 251 +++++--- .../tinyvue/src/components/navbar/index.vue | 32 +- .../tinyvue/src/components/theme/index.vue | 22 +- .../tinyvue/src/components/theme/type.ts | 422 ++++++++++--- .../template/tinyvue/src/config/settings.json | 3 +- .../pro/template/tinyvue/src/env.d.ts | 26 + .../tinyvue/src/layout/default-layout.vue | 34 +- .../pro/template/tinyvue/src/locale/en-US.ts | 4 +- .../pro/template/tinyvue/src/locale/zh-CN.ts | 4 +- .../pro/template/tinyvue/src/mock/utils.ts | 27 + .../tinyvue/src/store/modules/app/index.ts | 3 + .../tinyvue/src/store/modules/app/types.ts | 1 + .../pro/template/tinyvue/src/types/mock.ts | 5 + .../src/views/board/home/components/curve.vue | 2 +- .../src/views/board/home/components/falls.vue | 2 +- .../src/views/board/home/components/round.vue | 2 +- .../src/views/cloud/contracts/index.vue | 88 ++- .../tinyvue/src/views/form/base/index.vue | 173 +++--- .../template/tinyvue/src/views/form/index.vue | 4 +- .../src/views/list/search-table/index.vue | 10 +- .../views/list/search-table/search-table.less | 39 +- .../src/views/login/components/login-lang.vue | 2 +- .../src/views/profile/detail/index.vue | 133 ++-- .../user/info/components/info-filter.vue | 2 +- .../info/components/info-filterEndTime.vue | 2 +- .../info/components/info-filterStartTime.vue | 2 +- .../info/components/info-filterStatue.vue | 63 ++ .../info/components/info-filterStatus.vue | 2 +- .../user/info/components/info-filterType.vue | 2 +- .../tinyvue/src/views/user/info/index.vue | 37 +- .../tinyvue/src/views/user/setting/index.vue | 2 +- 145 files changed, 3210 insertions(+), 1620 deletions(-) create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/img/console.svg create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/img/page-logo.svg create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/img/person-bg.png create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/img/theme.png create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-1.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-2.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-3.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-4.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-5.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-6.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-7.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-1.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-2.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-3.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-4.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-5.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-6.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-7.css create mode 100644 packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-8.css create mode 100644 packages/toolkits/pro/template/tinyvue/.env.pages create mode 100644 packages/toolkits/pro/template/tinyvue/config/plugin/arcoResolver.ts create mode 100644 packages/toolkits/pro/template/tinyvue/config/vite.config.preview.base.ts create mode 100644 packages/toolkits/pro/template/tinyvue/config/vite.config.preview.dev.ts create mode 100644 packages/toolkits/pro/template/tinyvue/config/vite.config.preview.prod.ts create mode 100644 packages/toolkits/pro/template/tinyvue/src/assets/images/avatar.png create mode 100644 packages/toolkits/pro/template/tinyvue/src/assets/images/blue-bg.png create mode 100644 packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.png create mode 100644 packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.svg create mode 100644 packages/toolkits/pro/template/tinyvue/src/env.d.ts create mode 100644 packages/toolkits/pro/template/tinyvue/src/mock/utils.ts create mode 100644 packages/toolkits/pro/template/tinyvue/src/types/mock.ts create mode 100644 packages/toolkits/pro/template/tinyvue/src/views/user/info/components/info-filterStatue.vue diff --git a/packages/toolkits/pro/template/tinyng/package.json b/packages/toolkits/pro/template/tinyng/package.json index 03f46a4a..3c17e62d 100644 --- a/packages/toolkits/pro/template/tinyng/package.json +++ b/packages/toolkits/pro/template/tinyng/package.json @@ -29,7 +29,9 @@ "ngx-markdown": "^14.0.1", "rxjs": "^7.8.0", "tslib": "^2.3.0", - "zone.js": "~0.11.4" + "zone.js": "~0.11.4", + "core-js": "^3.29.0", + "html-loader": "^1.3.0" }, "devDependencies": { "@angular-devkit/build-angular": "^14.0.1", diff --git a/packages/toolkits/pro/template/tinyng/src/app/@core/services/custom-theme.service.ts b/packages/toolkits/pro/template/tinyng/src/app/@core/services/custom-theme.service.ts index 32493474..9ef4975d 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@core/services/custom-theme.service.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/@core/services/custom-theme.service.ts @@ -3,20 +3,18 @@ import { ThemeAddrPrefix, ThemeType } from 'src/app/@shared/models/theme'; import { CustomStyle, textWhiteStyle } from '@config/tiny-pro'; export class CustomThemeService { - changeCustomTheme(color: string, isDark: boolean) { + changeCustomTheme(color: string, isDark: boolean, themeId:any) { if (isDark) { setTimeout(() => { - TiTheme.loadCss(`${ThemeAddrPrefix}/tiny-dark-theme.css`, 'tiny3theme'); + TiTheme.loadCss( + `${ThemeAddrPrefix}/${themeId}.css`, + 'tiny3theme' + ); }); } else { - TiTheme.loadCss(`${ThemeAddrPrefix}/tiny-hws-theme.css`, 'tiny3theme'); + // 加载默认主题不传入路径避免报错 + TiTheme.loadCss('', 'tiny3theme'); } - - for (const style of CustomStyle) { - document.documentElement.style.setProperty(style, color); - document.body.style.setProperty('--ti-leftmenu-item-selected-border-left-color', 'red'); - } - // 自定义主题下显示字体颜色设置为#fff for (const style of textWhiteStyle) { document.documentElement.style.setProperty(style, '#fff'); diff --git a/packages/toolkits/pro/template/tinyng/src/app/@core/services/personalize.service.ts b/packages/toolkits/pro/template/tinyng/src/app/@core/services/personalize.service.ts index 1f20b768..6ff9367b 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@core/services/personalize.service.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/@core/services/personalize.service.ts @@ -1,6 +1,11 @@ import { Injectable } from '@angular/core'; import { TiTheme } from '@opentiny/ng'; -import { TinyThemeConfigItems, DefaultTheme, ThemeAddrPrefix, ThemeType } from 'src/app/@shared/models/theme'; +import { + TinyThemeConfigItems, + DefaultTheme, + ThemeAddrPrefix, + ThemeType, +} from 'src/app/@shared/models/theme'; import { CustomStyle } from '@config/tiny-pro'; import { CustomThemeService } from './custom-theme.service'; @@ -13,7 +18,7 @@ export class PersonalizeService { items: [], }, ]; - + constructor(private customThemeService: CustomThemeService) {} initTheme(): void { @@ -21,7 +26,9 @@ export class PersonalizeService { this.addTinyTheme(); // 主题设置 - const theme = localStorage.getItem('t-pro-theme') ? JSON.parse(localStorage.getItem('t-pro-theme')!) : DefaultTheme; + const theme = localStorage.getItem('t-pro-theme') + ? JSON.parse(localStorage.getItem('t-pro-theme')!) + : DefaultTheme; if (theme.id === DefaultTheme.id) { this.setDefaultThemeStorage(theme); @@ -30,12 +37,12 @@ export class PersonalizeService { // 添加setTimeout原因:页面link的样式会比import加载快 // 因此loadCss加载的样式会被覆盖,添加setTimeout延迟执行 - if (theme.id === ThemeType.Custom) { - const { brand, isDark } = theme.custom; - this.customThemeService.changeCustomTheme(brand, isDark); - } else { + if (theme.id !== ThemeType.Custom) { setTimeout(() => { - TiTheme.loadCss(`${ThemeAddrPrefix}/${theme.id}.css`, 'tiny3theme'); + TiTheme.loadCss( + `${ThemeAddrPrefix}/${theme.id}.css`, + 'tiny3theme' + ); }); } } @@ -75,19 +82,20 @@ export class PersonalizeService { document.body.style.setProperty('--ti-leftmenu-item-selected-border-left-color', ''); } - const theme = localStorage.getItem('t-pro-theme') ? JSON.parse(localStorage.getItem('t-pro-theme')!) : DefaultTheme; + const theme = localStorage.getItem('t-pro-theme') + ? JSON.parse(localStorage.getItem('t-pro-theme')!) + : DefaultTheme; // 需要保存之前设置过的自定义主题相关配置 this.setDefaultThemeStorage(theme); - if (themeId === ThemeType.Custom) { - const { brand, isDark } = theme.custom; - this.customThemeService.changeCustomTheme(brand, isDark); - } else { + if (themeId !== ThemeType.Custom) { TiTheme.loadCss(`${ThemeAddrPrefix}/${themeId}.css`, 'tiny3theme'); } - const { brand, isDark } = theme.custom; - localStorage.setItem('t-pro-theme', JSON.stringify({ id: themeId, custom: { brand, isDark } })); + localStorage.setItem( + 't-pro-theme', + JSON.stringify({ id: themeId, custom: { brand, isDark } }) + ); } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/footer/footer.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/footer/footer.component.scss index 8a8554db..4a536172 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/footer/footer.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/footer/footer.component.scss @@ -1,14 +1,15 @@ .t-pro-footer { - height: 80px; - padding-top: 8px; - background-color: #f6f8f9; + height: 60px; + background-color: var(--ti-base-content-bg-color); .t-pro-footer-intro { + padding-top: 15px; display: flex; align-items: center; justify-content: center; + letter-spacing: 0.5px; font-size: 14px; - + .t-pro-production-name { a { color: var(--ti-base-color-common-5); diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.html index 311b17d8..120d8393 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.html @@ -1,9 +1,33 @@
- - {{ 'header.console' | translate }} +
+ + + + + + + + + + + + +
{{ 'header.console' | translate }}
- + + 编组 + + + + + + + + + + + {{ item.label }} diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.scss index 5fd4be0b..42643205 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-left-menu/header-left-menu.component.scss @@ -7,23 +7,41 @@ line-height: 10px; cursor: pointer; + > img { + margin-bottom: 2px; + } + ::ng-deep .ti3-overflow-padding { font-size: 14px; - color: #575d6c; + display: flex; + align-items: center; + color: var(--ti-common-select-color) !important; } } + .divide-line { height: 18px; padding-left: 28px; - border-left: 1px solid #dfe1e6; + border-left: 1px solid var(--ti-base-navbar-line-color); + img { + filter: drop-shadow(#ff0 100px 0); + } +} + +.home-icon { + color: var(--ti-common-select-color); } .console-text { font-size: 14px; - color: #202e54; + color: var( --ti-common-title-color-top); min-width: 42px; - margin-right: 10px; + margin: 0 10px 0 8px; + + &:hover { + color: var( --ti-common-title-color-top); + } } .region-select { @@ -33,10 +51,18 @@ padding: 0 8px 0 2px; border-radius: 16px; border: none; - background-color: #eff2f8 !important; + background-color: var(--ti-base-search-color) !important; } .region-icon { color: var(--ti-common-color-icon-normal); margin-right: var(--ti-common-space-base); } + +::ng-deep .ti3-select-dominator-dropdown-btn:after { + border-top: var(--ti-dominator-fold-icon-height) solid var(--ti-base-search-icon-color) !important; +} + +::ng-deep .region-icon { + color: var(--ti-common-select-color) !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.html index baec383a..63576ece 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.html @@ -1,15 +1,15 @@ +
\ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.scss index 666d76ea..18678fef 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-logo/header-logo.component.scss @@ -4,6 +4,7 @@ height: 60px; line-height: 60px; padding-left: 10px; + background-color: var(--ti-common-color-header-bg-color); &.t-pro-logo-shrink { padding-left: 0; @@ -17,6 +18,9 @@ .t-pro-logo-tiny { display: flex; align-items: center; + color: #151b24; + text-decoration: none; + cursor: pointer; img { width: 53px; @@ -38,17 +42,18 @@ .divide-line { height: 18px; padding-left: 32px; - border-left: 1px solid #dfe1e6; + border-left: 1px solid var(--ti-base-navbar-line-color); } - + .t-pro-logo-text { margin: 0 32px 0 12px; line-height: 32px; font-size: 23px; - color: #202e54; + color: var(--ti-common-title-color-top); font-weight: 700; vertical-align: middle; letter-spacing: 0.7px; + cursor: pointer; } .t-pro-page-logo-text { @@ -56,7 +61,7 @@ font-family: PingFang SC, PingFang SC-PingFang SC; font-weight: 400; text-align: left; - color: #202e54; + color: var(--ti-common-title-color-top); line-height: 22px; margin: 0 28px 0 10px; min-width: 130px; diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-notice/header-notice.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-notice/header-notice.component.scss index 58e54c10..0121ccbd 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-notice/header-notice.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-notice/header-notice.component.scss @@ -2,6 +2,7 @@ .close-container { height: 385px; + background-color: var(--ti-base-model-bg-color); } ti-halfmodal { @@ -9,7 +10,7 @@ ti-halfmodal { margin-right: 34px; overflow: hidden; border-radius: 8px; - box-shadow: 0px 0px 30px 15px rgba(37, 43, 58, 0.15); + box-shadow: 0px 0px 30px 15px rgba(37,43,58,0.15); } // 覆盖组件行内样式 @@ -24,6 +25,7 @@ ti-halfmodal { flex-shrink: 0; margin: 0; border-bottom: 1px solid var(--ti-common-color-line-dividing); + color: var(--ti-base-model-text-color); } .box-title-lable { @@ -42,17 +44,16 @@ ti-halfmodal { .icon-grey { font-size: 16px; line-height: 16px; - color: #86909c; } - > a { + >a { color: var(--ti-base-color-brand-7); height: 16px; text-decoration: none; margin: 0; } - > a:not(:last-of-type) { + >a:not(:last-of-type) { border-right: 1px solid #ccc; } } @@ -96,20 +97,21 @@ ti-halfmodal { overflow: hidden; text-overflow: ellipsis; font-size: 14px; - color: #202e54; + color: var(--ti-base-model-text-color); line-height: 25px; width: 60%; max-width: calc(100% - 136px); float: left; &:hover { - color: #8a8e99; + color: var(--ti-base-model-text-color); text-decoration: none; + font-weight: 600; } } .item-time { - color: #8a8e99; + color: var(--ti-common-color-text-primary); font-size: 14px; line-height: 20px; } @@ -122,10 +124,13 @@ ti-halfmodal { align-items: center; height: 60px; width: 400px; - background-color: #fff; + background-color: var(--ti-base-model-bg-color); } .menu-footer { font-size: 14px; - color: #2f5bea; + color: var(--ti-base-model-link-color); line-height: 20px; } +.icon-grey { + color: var(--ti-base-model-text-color); +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-operation.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-operation.component.scss index c3c8dd44..dce228ed 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-operation.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header-operation/header-operation.component.scss @@ -19,11 +19,7 @@ } a { - color: #202e54; - } - - a:hover { - color: var(--ti-base-color-brand-7); + color: var(--ti-common-select-color); } .help-center { @@ -37,7 +33,7 @@ margin-right: 30px; padding: 0 10px; border-radius: 16px; - background-color: #eff2f8; + background-color: var(--ti-base-search-color); width: 274px; height: 32px; border: none; @@ -127,6 +123,10 @@ margin: 0 auto; } +::ng-deep .ti3-searchbox-search{ + color: var(--ti-base-search-icon-color) !important; +} + @media only screen and (max-width: 620px) { .t-pro-operations-user { .t-pro-user-name { diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header.component.scss index 50393068..f4315c1f 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/header/header.component.scss @@ -6,7 +6,7 @@ align-items: center; justify-content: space-between; font-size: var(--ti-common-font-size-1); - color: #202e54; + color: var(--ti-common-select-color); } .router-active { diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/helptip/helptip.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/helptip/helptip.component.scss index 52043e99..1c67064a 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/helptip/helptip.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/helptip/helptip.component.scss @@ -16,7 +16,7 @@ font-size: 20px; cursor: help; &:hover { - color: #5e7ce0; + color: var(--ti-base-color-brand-6); } } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/layouts/layout.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/layouts/layout.component.scss index cb6b3836..50ce5d27 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/layouts/layout.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/layouts/layout.component.scss @@ -19,7 +19,7 @@ top: 20px; width: 16px; height: 36px; - box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.1); + box-shadow: 0px 4px 12px 0px rgba(0 ,0 ,0 ,.10); border: 1px solid #ebebeb; background-color: #fff; border-radius: 0 8px 8px 0; @@ -35,7 +35,7 @@ &::after { display: block; - content: ''; + content: ""; position: relative; width: 0; height: 0; @@ -49,7 +49,7 @@ /* TODO: 阴影色确定 */ .t-pro-basic-layout-wrapper { min-height: 100%; - background-color: #f6f8f9; + background-color: var(--ti-default-body-bg, #f6f8f9); & > t-pro-basic-layout { width: 0; @@ -100,8 +100,9 @@ } .t-pro-layout-header { - background-color: var(--ti-base-color-white); - box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.2); + background-color: var(--ti-common-color-header-bg-color); + justify-content: space-between; + box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, .20); } &.t-pro-basic-no-sec-header .t-pro-layout-header { @@ -117,3 +118,6 @@ background-color: var(--ti-base-color-white); } } + ::ng-deep .t-pro-basic-content { + background: var(--ti-base-content-bg-color); + } \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.html index 48f7ce1e..23700bf6 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.html @@ -4,7 +4,7 @@
diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.scss index 292ef4db..ed7b5af7 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/login/login.component.scss @@ -70,7 +70,7 @@ display: flex; justify-content: left; margin-bottom: 32px; - border-bottom: 2px solid #f6f8f9; + border-bottom: 2px solid var(--ti-default-body-bg, #f6f8f9); .t-pro-tabs-title { font-size: var(--ti-common-font-size-2); diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.html index 53fd23b1..5e718336 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.html @@ -1,3 +1,3 @@
- set-color + set-layout
diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.scss index 338747ac..45649cd8 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/multi-settings.component.scss @@ -2,10 +2,11 @@ position: fixed; right: 20px; bottom: 30px; - width: 40px; - height: 40px; - border-radius: 4px 0 0 4px; + width: 44px; + height: 44px; + border-radius: 50%; font-size: 18px; + background-color: #a9aeb8; color: var(--ti-common-color-text-gray); display: flex; align-items: center; diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/side-settings/side-settings.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/side-settings/side-settings.component.scss index a7744066..ed47434e 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/side-settings/side-settings.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/multi-settings/side-settings/side-settings.component.scss @@ -1,7 +1,7 @@ -::ng-deep ti-halfmodalcontainer.ti3-halfmodal-layout-container { +::ng-deep ti-halfmodalcontainer.ti3-halfmodal-layout-container{ padding: 30px; } - + ::ng-deep ti-icon.ti3-halfmodal-close { margin-right: 10px; z-index: 100; @@ -24,11 +24,11 @@ > h3 { padding: 10px 0 20px; - color: #202e54; + color: var(--ti-common-color-text-primary); font-size: 18px; line-height: 25px; } - &:nth-child(n + 2) { + &:nth-child(n+2) { margin-top: 30px; } &:nth-child(3) { @@ -42,7 +42,7 @@ > h4 { font-size: 14px; line-height: 20px; - color: #202e54; + color: var(--ti-common-color-text-primary); } } @@ -69,7 +69,7 @@ line-height: 20px; } - //导航栏 + // 导航栏 &::before { background-color: var(--ti-common-color-bg-white-normal); content: ''; @@ -80,7 +80,7 @@ height: 100%; } - //头部区域 + // 头部区域 &::after { background-color: var(--ti-common-color-bg-white-normal); content: ''; @@ -150,6 +150,7 @@ } .t-pro-option-multiple { + .t-pro-multiple-item { display: flex; justify-content: space-between; diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.html index 0ecbbc53..eca112ee 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.html @@ -1,3 +1,3 @@
- + set-theme
diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.scss index b8d13301..f5455414 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.scss @@ -1,23 +1,18 @@ .t-pro-personalize-config { position: fixed; - right: 30px; - bottom: 70px; + right: 20px; + bottom: 125px; + height: 44px; + width: 44px; border-radius: 50%; - height: 40px; - width: 40px; - cursor: pointer; display: flex; align-items: center; justify-content: center; - color: var(--ti-base-color-brand-2); - background-color: var(--ti-common-color-bg-white-normal); - box-shadow: var(--ti-common-shadow-3-down); z-index: 10; - font-size: var(--ti-common-font-size-2); -} + cursor: pointer; -@media screen and (min-width: 768px) { - ::ng-deep .ti3-modal-dialog { - width: 800px !important; + > img { + height: 44px; + width: 44px; } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.ts b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.ts index dd486314..75629e3b 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize-config/personalize-config.component.ts @@ -1,6 +1,7 @@ import { Component } from '@angular/core'; import { TiModalService } from '@opentiny/ng'; import { PersonalizeComponent } from '@shared/tiny-pro'; +import { PersonalizeService } from '@core/personalize'; @Component({ selector: 't-pro-personalize-config', @@ -8,12 +9,21 @@ import { PersonalizeComponent } from '@shared/tiny-pro'; styleUrls: ['./personalize-config.component.scss'], }) export class PersonalizeConfigComponent { - constructor(private tiModal: TiModalService) {} - + constructor( + private tiModal: TiModalService, + private personalizeService: PersonalizeService + ) {} + ngOnInit() { + this.personalizeService.changeTheme('tiny-hws-theme'); + } + personalizeConfig() { + this.tiModal.open(PersonalizeComponent, { id: 'theme', close: (): void => {}, + // modalClass接口:接收弹窗的自定义样式 + modalClass: 'modal-class-personalize' }); } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.html index 0cbf9753..34641044 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.html @@ -1,50 +1,48 @@ - - -
{{ 'personalize.title' | translate }}
- - - -
-
-
- -
- {{ 'personalize.' + configs[0].name | translate }} -
-
-
+ + +
+
+ {{ 'personalize.tiny-recommend-theme' | translate }} +
+ +
+
{{ theme.name | translate }}
+
{{ theme.feature | translate }}
+
+ +
+
+
+ {{ 'personalize.tiny-customize-theme' | translate }} +
+ +
{{ 'personalize.tiny-light-theme' | translate }}
+
+
+
+ +
- - - - -
- - {{ theme?.name }} +
+
+
{{ 'personalize.tiny-dark-theme' | translate }}
+
+
+
+ +
- - -
- -
-
-
- - - - -
+
+
+
+
- + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.scss index 0715abd4..b6e34fe8 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.scss @@ -1,101 +1,113 @@ +.t-pro-personalize-title { + .t-pro-title { + color: var(--ti-base-color-common-7); + font-weight: normal; + font-size: 18px; + line-height: 25px; + font-weight: 500; + } +} + .t-pro-personalize-config { - padding: 0 12px; + padding: 8px 48px 0; - .t-pro-personalize-title { - display: flex; - flex-direction: column; - width: 100%; - align-items: center; - justify-content: center; - - .t-pro-title { - color: var(--ti-base-color-common-7); - transform: translateY(-5px); - font-size: var(--ti-common-font-size-5); - font-weight: 500; - } + .t-pro-list-title { + font-size: 16px; + font-weight: normal; + color: var(--ti-base-color-common-7); + line-height: 22px; + } + + .content-space { + margin: 40px 0 20px 0; } + .t-pro-item { - color: var(--ti-base-color-common-7); - text-align: center; - background-color: var(--ti-common-color-bg-white-normal); - box-shadow: var(--ti-common-shadow-1-down); - border-radius: var(--ti-common-border-radius-normal); - padding: 24px 16px 20px; - margin-bottom: 12px; - height: 100%; - - &:last-child { - margin-right: 0; - } + width: 436px; + height: 64px; + border-radius: 8px; + box-shadow: 2px 2px 15px 3px rgba(85 ,105 ,173 ,.06); + margin: 20px 0; + font-size: 14px; + line-height: 20px; + color: var(--ti-base-color-white); + position: relative; .t-pro-item-title { + padding: 10px 0 0 20px; + } + + .t-pro-item-content { + padding: 3px 0 0 20px; + } + + .t-pro-item-icon { + width: 24px; + height: 24px; + border-radius: 50%; + background-color: var(--ti-base-color-white); display: flex; justify-content: center; - flex-direction: column; align-items: center; - font-size: var(--ti-common-font-size-base); - - .t-pro-icon-content { - display: flex; - align-items: center; - justify-content: center; - width: 46px; - height: 46px; - border-radius: var(--ti-common-border-radius-1); - background-color: var(--ti-base-color-brand-2); - color: var(--ti-base-color-white); + position: absolute; + right: 20px; + bottom: 20px; + + .icon-green { + color: #7bd06c; } - .t-pro-item-title-text { - margin-top: 12px; - font-size: var(--ti-common-font-size-base); - font-weight: 500; + > ti-icon { + padding-top: 3px; + font-size: 20px; + color: #dfe1e6; } } - .t-pro-radio-row { - text-align: left; - margin-left: 16px; - margin-bottom: 16px; - width: 100%; - } } -} - -.t-pro-theme-name { - display: flex; - align-items: center; - justify-content: center; - color: var(--ti-base-color-common-7); - font-size: var(--ti-common-font-size-2); - font-weight: 600; - margin-bottom: 12px; - margin-top: 24px; -} -.t-pro-theme-colors { - .t-pro-theme-color { - text-align: center; - } + .t-pro-theme-box { + display: flex; + justify-content: space-between; + width: 588px; + .t-pro-theme-item { + display: flex; + justify-content: center; + align-items: center; + margin: 10px 0 30px 0; + width: 56px; + height: 56px; + border-radius: 8px; + box-shadow: 2px 2px 15px 3px rgba(85 ,105 ,173 ,.06); + .t-pro-color { + border-radius: 50%; + width: 26px; + height: 26px; - .t-pro-color-avatar { - display: inline-flex; - align-items: center; - justify-content: center; - width: 30px; - height: 30px; - border-radius: var(--ti-common-border-radius-normal); - cursor: pointer; - margin-left: 12px; - transition: box-shadow 0.3s cubic-bezier(0.645, 0.045, 0.355, 1), transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - - &:hover { - box-shadow: var(--ti-common-shadow-3-down); + > ti-icon { + padding: 3px 0 0 3px; + font-size: 20px; + color: var(--ti-base-color-white); + } + } } - &:first-child { - margin-left: 0; + .t-pro-dark { + background: #676868; } } + +} + +::ng-deep ti-modal-wrapper .modal-class-personalize { + width: 748px; + height: 922px; + margin-top: 60px; +} + +::ng-deep .ti3-modal-body { + max-height: none !important; +} +::ng-deep .ti3-modal-close { + color: #8a8e99 !important; } @media only screen and (max-width: 1024px) { diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.ts b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.ts index 689fd7c1..a2c432ed 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/personalize/personalize.component.ts @@ -1,7 +1,7 @@ import { Component, OnInit } from '@angular/core'; import { PersonalizeService } from 'src/app/@core/services/personalize.service'; import { CustomThemeService } from 'src/app/@core/services/custom-theme.service'; -import { ThemeType, ThemeColors, DefaultTheme } from '../../models/theme'; +import { ThemeType, ThemeColors, DefaultTheme, LightTheme, ThemeDarkColor } from '../../models/theme'; @Component({ selector: 't-pro-personalize', @@ -15,22 +15,36 @@ export class PersonalizeComponent implements OnInit { public currentTheme: any; public configs: any[] = []; public themeColors: any = ThemeColors; + public LightTheme:any = LightTheme; + public ThemeDarkColor:any = ThemeDarkColor; public currentValue: any = { - themes: localStorage.getItem('t-pro-theme') ? JSON.parse(localStorage.getItem('t-pro-theme')!) : DefaultTheme, + themes: localStorage.getItem('t-pro-theme') + ? JSON.parse(localStorage.getItem('t-pro-theme')!) + : DefaultTheme, }; - constructor(private personalizeService: PersonalizeService, private customThemeService: CustomThemeService) { + constructor( + private personalizeService: PersonalizeService, + private customThemeService: CustomThemeService + ) { this.customColor = DefaultTheme.brand; this.customDark = DefaultTheme.isDark; } ngOnInit() { + this.ThemeDarkColor.forEach((item: { isDark: boolean; }) => { + item.isDark = true; + }); + this.LightTheme.forEach((item: { isDark: boolean; }) => { + item.isDark = false; + }); this.configs = this.personalizeService.configs; + this.currentTheme = this.currentValue?.themes.id; this.getCustomColor(); } - onChange(type: string, value: any) { + changeTheme(type: string, value: any) { if (type === 'themes') { this.currentTheme = value; this.personalizeService.changeTheme(value); @@ -49,12 +63,19 @@ export class PersonalizeComponent implements OnInit { } } - selectColor(color: string, theme: any) { + selectColor(type: string, value: any) { + if (type === 'themes') { + this.currentTheme = value.id; + this.personalizeService.changeTheme(value.id); + } + } + + selectDarkColor(color: string, theme: any) { this.customColor = color; this.customDark = theme.isDark; this.currentValue.themes.id = ThemeType.Custom; this.currentTheme = ThemeType.Custom; - - this.customThemeService.changeCustomTheme(color, theme.isDark); + + this.customThemeService.changeCustomTheme(color, theme.isDark, theme.id); } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/register/register.component.html b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/register/register.component.html index 1f47ee5c..8ce026fa 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/register/register.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/register/register.component.html @@ -4,7 +4,7 @@
diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/side-menu/side-menu.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/side-menu/side-menu.component.scss index 2ab8a11a..93695bea 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/components/side-menu/side-menu.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/components/side-menu/side-menu.component.scss @@ -6,9 +6,8 @@ margin: 3px 0; } - .ti3-leftmenu-level1-active-item:before, - .ti3-leftmenu-level2-active:before { - background-color: var(--ti-base-color-brand-6); + .ti3-leftmenu-level1-active-item:before, .ti3-leftmenu-level2-active:before { + background-color: #fff; } ::ng-deep .ti3-leftmenu-panel { @@ -18,10 +17,10 @@ ::ng-deep .ti3-leftmenu-level1-item.ti3-leftmenu-level1-active-item { background-color: var(--ti-common-color-bg-light-normal); - + color: #fff; &:hover { background-color: var(--ti-common-color-bg-light-normal); - color: var(--ti-common-color-text-highlight); + color: #fff !important; } } @@ -36,10 +35,10 @@ ::ng-deep .ti3-leftmenu-level2.ti3-leftmenu-level2-active { background-color: var(--ti-common-color-bg-light-normal); - + color: #fff !important; &:hover { - background-color: var(--ti-common-color-bg-light-normal); - color: var(--ti-common-color-text-highlight); + background-color: var(--ti-common-color-bg-light-normal) !important; + color: #fff !important; } } @@ -52,8 +51,8 @@ width: 28px; height: 28px; border-radius: 50%; - background-color: #fff; - box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.1); + background-color: var(--ti-base-collapse-bg-color); + box-shadow: 0px 4px 12px 0px rgba(0 ,0 ,0 ,.10); } .menu-item { diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/models/theme.ts b/packages/toolkits/pro/template/tinyng/src/app/@shared/models/theme.ts index e5bb58ab..00e43cc2 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/models/theme.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/models/theme.ts @@ -13,50 +13,128 @@ export const TinyThemeConfigItems = [ cnName: '默认主题', id: 'tiny-hws-theme', isDark: undefined, - name: '默认主题', + name: 'personalize.tiny-hws-theme', + feature: 'personalize.tiny-hws-theme-feature', + show: 'linear-gradient(225deg,#97b3f2 1%, #5e7ce0)' }, { cnName: '蜜糖主题', id: 'tiny-sweet-theme', isDark: undefined, - name: '蜜糖主题', + name: 'personalize.tiny-sweet-theme', + feature: 'personalize.tiny-sweet-theme-feature', + show: 'linear-gradient(229deg,#f79fd5, #ed66ab 94%)' }, { cnName: '紫罗兰主题', id: 'tiny-provence-theme', isDark: undefined, - name: '紫罗兰主题', + name: 'personalize.tiny-provence-theme', + feature: 'personalize.tiny-provence-theme-feature', + show: 'linear-gradient(225deg,#b3a3f8, #7c6aee)' }, { cnName: '深邃夜空主题', id: 'tiny-deep-theme', isDark: undefined, - name: '深邃夜空主题', + name: 'personalize.tiny-deep-theme', + feature: 'personalize.tiny-deep-theme-feature', + show: 'linear-gradient(228deg,#4a566c, #242b3a 96%)' }, { cnName: '深色主题', id: 'tiny-dark-theme', isDark: true, - name: '深色主题', + name: 'personalize.tiny-dark-theme', + feature: 'personalize.tiny-dark-theme-feature', + show: 'linear-gradient(228deg,#464747 5%, #000000)' + } +]; +export const LightTheme = [ + { + id: 'tiny-light-theme-1', + color : '#343a40', }, { - cnName: '自定义主题', - id: 'tiny-customize-theme', - isDark: false, - name: '自定义主题', + id: 'tiny-light-theme-2', + color : '#25316C', }, -]; + { + id: 'tiny-light-theme-3', + color : '#673AB7', + }, + { + id: 'tiny-light-theme-4', + color : '#4f7dff', + }, + { + id: 'tiny-light-theme-5', + color : '#4DAF77', + }, + { + id: 'tiny-light-theme-6', + color : '#5faa15', + }, + { + id: 'tiny-light-theme-7', + color : '#FF6A0B', + }, + { + id: 'tiny-light-theme-8', + color : '#F36B7F', + } +] -export const ThemeColors = [ +export const ThemeDarkColor = [ + { + id: 'tiny-dark-theme', + color : '#343a40', + }, + { + id: 'tiny-dark-theme-1', + color : '#25316C', + }, + { + id: 'tiny-dark-theme-2', + color : '#673AB7', + }, + { + id: 'tiny-dark-theme-3', + color : '#4f7dff', + }, { - name: 'Light', - isDark: false, - colors: ['#343a40', '#24316c', '#673AB7', '#4f7dff', '#4caf78', '#5faa15', '#ff6a0d', '#f36b7f'], + id: 'tiny-dark-theme-4', + color : '#4DAF77', }, + { + id: 'tiny-dark-theme-5', + color : '#5faa15', + }, + { + id: 'tiny-dark-theme-6', + color : '#FF6A0B', + }, + { + id: 'tiny-dark-theme-7', + color : '#F36B7F', + }, +] + +export const ThemeColors = [ { name: 'Dark', + title: 'personalize.tiny-dark-theme', isDark: true, - colors: ['#343a40', '#24316c', '#673AB7', '#4f7dff', '#4caf78', '#5faa15', '#ff6a0d', '#f36b7f'], + colors: [ + '#343a40', + '#24316c', + '#292332', + '#4f7dff', + '#4caf78', + '#5faa15', + '#ff6a0d', + '#f36b7f', + ], }, ]; @@ -67,4 +145,4 @@ export const DefaultTheme = { custome: {}, }; -export const ThemeAddrPrefix = '/assets/styles/theme/'; +export const ThemeAddrPrefix = '/assets/styles/theme'; diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/modules/dropdown/dropdown.component.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/modules/dropdown/dropdown.component.scss index b70801b6..706b085e 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/modules/dropdown/dropdown.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/modules/dropdown/dropdown.component.scss @@ -1,3 +1,5 @@ + + .cdk-overlay-container, .cdk-global-overlay-wrapper { pointer-events: none; @@ -145,15 +147,15 @@ outline: none; } -.open > .t-pro-base-dropdown-menu { +.open>.t-pro-base-dropdown-menu { display: block; } -.t-pro-base-dropdown-menu > li { +.t-pro-base-dropdown-menu>li { position: relative; } -.t-pro-base-dropdown-menu > li > a { +.t-pro-base-dropdown-menu>li>a { height: 36px; padding: 0 10px; cursor: pointer; @@ -162,41 +164,41 @@ text-decoration: none; } -.t-pro-base-dropdown-menu li > input { +.t-pro-base-dropdown-menu li>input { margin: 0 10px; } -.t-pro-base-dropdown-menu > .disabled > a { +.t-pro-base-dropdown-menu>.disabled>a { color: #adb0b8; cursor: not-allowed; } -.t-pro-base-dropdown-menu > .disabled > a:hover, -.t-pro-base-dropdown-menu > .disabled > a:focus { +.t-pro-base-dropdown-menu>.disabled>a:hover, +.t-pro-base-dropdown-menu>.disabled>a:focus { cursor: not-allowed; } .t-pro-base-dropdown-menu .t-pro-base-dropdown-item:not(.disabled):hover:not(:active):not(.selected):not(.active) { - background-color: var(--ti-base-color-brand-1); - color: var(--ti-base-color-brand-7); + background-color: var(--ti-base-color-brand-2); + color: var(--ti-base-color-common); } .t-pro-base-dropdown-menu .t-pro-base-dropdown-item:not(.disabled):active:hover { - background-color: var(--ti-base-color-brand-1); - color: var(--ti-base-color-brand-7); + background-color: var(--ti-base-color-brand-2); + color: var(--ti-base-color-common); } .t-pro-base-dropdown-menu .t-pro-base-dropdown-item:not(.disabled).t-pro-base-dropdown-bg { - background-color: var(--ti-base-color-brand-1); - color: var(--ti-base-color-brand-7); + background-color: var(--ti-base-color-brand-2); + color: var(--ti-base-color-common); } .t-pro-base-dropdown-menu .t-pro-base-dropdown-item:not(.disabled).active { - background-color: var(--ti-base-color-brand-1); - color: var(--ti-base-color-brand-7); + background-color: var(--ti-base-color-brand-2); + color: var(--ti-base-color-common); } -.cdk-overlay-pane > div > .t-pro-base-dropdown-menu { +.cdk-overlay-pane>div>.t-pro-base-dropdown-menu { position: relative; top: 0; // initial; ie11不认识initial left: 0; //initial; @@ -204,6 +206,7 @@ } .t-pro-base-dropdown span { + &.icon-chevron-down, &.icon-select-arrow { display: inline-block; @@ -212,6 +215,7 @@ } .t-pro-base-dropdown-animation span { + &.icon-chevron-down, &.icon-select-arrow { transition: transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1); @@ -219,6 +223,7 @@ } .t-pro-base-dropdown.open span { + &.icon-chevron-down, &.icon-select-arrow { transform: rotate(180deg); diff --git a/packages/toolkits/pro/template/tinyng/src/app/@shared/styles/common.scss b/packages/toolkits/pro/template/tinyng/src/app/@shared/styles/common.scss index f14392f9..57e91d4a 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/@shared/styles/common.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/@shared/styles/common.scss @@ -6,7 +6,7 @@ font-family: PingFang SC, PingFang SC-PingFang SC; font-weight: normal; text-align: left; - color: #4e5969; + color: var(--ti-common-color-text-primary); line-height: 14px; } } @@ -26,7 +26,6 @@ @mixin t-pro-product-card { padding: 20px 20px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); border-radius: 8px; background: var(--ti-common-color-bg-white-normal); } @@ -52,3 +51,22 @@ background-color: var(--ti-common-color-line-normal); } } +::ng-deep .ti3-leftmenu-level2:after { + border: none !important; +} + +::ng-deep .ti3-btn-danger { + background-color: var(--ti-common-color-bg-light-normal) !important; +} + +::ng-deep .ti3-leftmenu-panel { + font-size: 14px; + color:var(--ti-base-menu-text) !important; +} + +a { + color: var(--ti-base-link-a-color) !important; + &:hover{ + text-decoration: underline; + } +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/app-routing.module.ts b/packages/toolkits/pro/template/tinyng/src/app/app-routing.module.ts index 4566c8de..2db038ed 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/app-routing.module.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/app-routing.module.ts @@ -2,12 +2,12 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; import { AuthGuardService } from './@core/services/auth-guard-service.guard'; import { LoginComponent, RegisterComponent } from '@shared/tiny-pro'; -import { MarketplaceComponent } from './pages/console-home/widgets/marketplace/marketplace.component'; const routes: Routes = [ { path: 'pages', - loadChildren: () => import('./pages/pages.module').then((m) => m.PagesModule), + loadChildren: () => + import('./pages/pages.module').then((m) => m.PagesModule), canActivate: [AuthGuardService], }, { @@ -18,10 +18,6 @@ const routes: Routes = [ path: 'pages/register', component: RegisterComponent, }, - { - path: 'pages/platform-demo', - component: MarketplaceComponent, - }, { path: '', redirectTo: 'pages', @@ -31,6 +27,7 @@ const routes: Routes = [ path: '**', redirectTo: 'pages', }, + ]; @NgModule({ diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/console-home.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/console-home.component.scss index 986f697c..79666665 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/console-home.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/console-home.component.scss @@ -2,18 +2,17 @@ .resource-groups { border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color); } .marketplace-content { border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color); } .recommendation-ad { border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color); } + + diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/beginner-guide/beginner-guide.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/beginner-guide/beginner-guide.component.scss index a105d9ae..d4dac6d7 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/beginner-guide/beginner-guide.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/beginner-guide/beginner-guide.component.scss @@ -2,12 +2,14 @@ padding: 20px 20px; margin-top: 20px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color); width: 100%; - a { text-decoration: none; + color: var(--ti-base-notice-content-color); + &:hover { + font-weight: 600; + } } .beginner-title { @@ -18,7 +20,7 @@ .title { font-size: 16px; - color: var(--ti-common-color-text-primary); + color: var(--ti-base-notice-content-color); font-weight: bold; } @@ -29,6 +31,11 @@ a { font-size: 14px; + &:hover { + color: var(--ti-common-color-text-primary); + text-decoration: underline; + font-weight: 600; + } } } } @@ -36,11 +43,11 @@ .beginner-content { a { font-size: 12px; - color: var(--ti-common-color-text-primary); + color: var(--ti-base-notice-content-color); } a span:last-of-type:hover { - color: var(--ti-common-color-bg-hover); + font-weight: 600; } > li:not(:last-of-type) { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace-all-svg/marketplace-all-svg.component.html b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace-all-svg/marketplace-all-svg.component.html index afdf6eba..ea5d5e02 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace-all-svg/marketplace-all-svg.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace-all-svg/marketplace-all-svg.component.html @@ -6,10 +6,10 @@ + fill="#AAA" p-id="808"> + fill="#AAA" p-id="809"> @@ -17,7 +17,7 @@ - + @@ -44,7 +44,7 @@ + fill="#AAA" /> @@ -58,7 +58,7 @@ viewBox="0 0 32 35" version="1.1"> Security-AAG1632453099800 - + @@ -76,7 +76,7 @@ - + @@ -97,7 +97,7 @@ - + @@ -118,7 +118,7 @@ - + @@ -137,7 +137,7 @@ - + diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace.component.scss index eb77f4a2..547c6503 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/marketplace/marketplace.component.scss @@ -17,12 +17,13 @@ .access-font-set { line-height: 20px; font-size: 14px; - color: var(--ti-common-color-text-highlight); + color: var(--ti-common-color-text-primary); font-weight: normal; cursor: pointer; &:hover { - color: var(--ti-common-color-text-link-hover); + color: var(--ti-common-color-text-primary); + font-weight: 600; } } @@ -38,7 +39,7 @@ float: left; .marketplace-instance-item { - background-color: var(--ti-common-color-bg-light-normal); + background-color: var(--ti-common-color-bg-white-emphasize); color: var(--ti-common-color-text-highlight); line-height: 46px; height: 46px; @@ -56,6 +57,7 @@ &:hover { background-color: var(--ti-base-color-brand-4); color: var(--ti-common-color-text-white); + font-weight: 600; } } } @@ -75,13 +77,13 @@ width: calc(100% - 20px); margin-left: 20px; height: 68px; - border: 1px solid #e9edfa; + border: 1px solid var(--ti-common-color-bg-white-emphasize); box-sizing: border-box; position: relative; cursor: pointer; &:hover { - border: 1px solid var(--ti-base-color-brand-5); + border: 1px solid var(--ti-base-color-border-hover); } .cate-svg { @@ -101,6 +103,7 @@ } .cate-title { + color: var(--ti-base-notice-content-color); position: absolute; top: 12px; left: 80px; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.scss index e2e3e81c..66f298ab 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.scss @@ -1,75 +1,73 @@ .recommend-content { - margin-top: 20px; - padding: 20px 20px 30px 20px; + margin-top: 20px; + padding: 20px; } .recommend-content-services { - overflow: hidden; - .recommend-title { - margin-bottom: 17px; - line-height: 20px; - color: var(--ti-base-color-common-7); - font-size: 16px; - font-weight: bold; - } - - .recommend-list { - .recommend-column { - width: 25%; - float: left; + overflow: hidden; + .recommend-title { + margin-bottom: 9px; + line-height: 20px; + color: var(--ti-base-color-common-7); + font-size: 16px; + font-weight: bold; + } - .recommend-wrap { - height: 86px; - max-height: 86px; - padding: 12px 8px 4px 8px; - border: 1px solid transparent; + .recommend-list { + .recommend-column { + padding: 9px; + width: 25%; + float: left; - &:hover { - cursor: pointer; - border: 1px solid #bbc8fa; - } - - .recommend-img { - float: left; - width: 60px; - height: 60px; - } + .recommend-wrap { + height: 86px; + max-height: 86px; + padding: 12px; + &:hover { + border: 1px solid var(--ti-base-color-border-hover); + cursor: pointer; + } - .recommend-right { - float: left; - max-width: calc(100% - 70px); + .recommend-img { + float: left; + width: 60px; + height: 60px; + } - .side-href-title { - display: inline-block; - font-size: 14px; - line-height: 14px; - color: #41424b; - text-decoration: none; - margin-left: var(--ti-common-space-3x); - width: 100%; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - word-break: break-all; + .recommend-right { + float: left; + max-width: calc(100% - 70px); - &:hover { - color: #5e7ce0; + .side-href-title { + display: inline-block; + font-size: 14px; + line-height: 14px; + text-decoration: none; + margin-left: var(--ti-common-space-3x); + width: 100%; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + word-break: break-all; + color: var(--ti-base-notice-content-color); + &:hover { + color: var(--ti-base-color-brand-6); + } } - } - .side-href-content { - font-size: 14px; - line-height: 22px; - color: #8a8e99; - margin-left: var(--ti-common-space-3x); - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; + .side-href-content { + font-size: 14px; + line-height: 22px; + color: #8a8e99; + margin-left: var(--ti-common-space-3x); + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + } } } } } - } -} +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.spec.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.spec.ts index 923bdfdd..82007d13 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.spec.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/recommendation/recommendation.component.spec.ts @@ -8,8 +8,9 @@ describe('RecommendationComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [RecommendationComponent], - }).compileComponents(); + declarations: [ RecommendationComponent ] + }) + .compileComponents(); fixture = TestBed.createComponent(RecommendationComponent); component = fixture.componentInstance; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/resource-groups/resource-groups.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/resource-groups/resource-groups.component.scss index 821e295b..bf741e29 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/resource-groups/resource-groups.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/resource-groups/resource-groups.component.scss @@ -5,11 +5,11 @@ .my-resource-title { font-size: 14px; margin-left: 20px; - color: var(--ti-common-color-text-primary); + color: var(--ti-base-color-common-7); line-height: 20px; .title { font-size: 16px; - color: var(--ti-common-color-text-primary); + color: var(--ti-base-color-common-7); font-weight: bold; } .cloud-regionName { @@ -19,10 +19,11 @@ } .my-resources-view-resources-font-set { font-size: 14px; - color: var(--ti-common-color-text-highlight); + color: var(--ti-common-color-text-primary); cursor: pointer; &:hover { - color: var(--ti-common-color-text-link-hover); + color: var(--ti-common-color-text-primary); + font-weight: 600; } } } @@ -46,7 +47,7 @@ } .my-resource-instance-item { - background-color: var(--ti-common-color-bg-light-normal); + background-color: var(--ti-common-color-bg-white-emphasize); color: var(--ti-common-color-text-highlight); line-height: 46px; height: 46px; @@ -55,6 +56,7 @@ &:hover { color: var(--ti-common-color-text-white); background-color: var(--ti-base-color-brand-4); + font-weight: 600; } .my-resource-name-font-set { display: inline-block; @@ -139,7 +141,7 @@ line-height: 14px; color: var(--ti-common-color-text-highlight); cursor: pointer; - background: var(--ti-common-color-bg-light-normal); + background: var(--ti-common-color-bg-white-emphasize); text-overflow: ellipsis; overflow: hidden; white-space: nowrap; @@ -149,5 +151,6 @@ &:hover { color: var(--ti-common-color-text-white); background-color: var(--ti-base-color-brand-4); + font-weight: 600; } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-advertise/side-advertise.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-advertise/side-advertise.component.scss index 81e57470..d9881649 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-advertise/side-advertise.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-advertise/side-advertise.component.scss @@ -10,7 +10,7 @@ overflow: hidden; height: 100%; - > div { + >div { position: relative; height: 100%; width: 100%; @@ -28,6 +28,6 @@ .banner-img { padding-top: 20px; width: 100%; - height: 126px; + height: 127px; } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-announcement/side-announcement.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-announcement/side-announcement.component.scss index 3c9356eb..c0b6e47b 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-announcement/side-announcement.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/side-announcement/side-announcement.component.scss @@ -3,8 +3,7 @@ padding: 20px 20px 13px 15px; margin-top: 20px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color); width: 100%; .side-annoucement-title { @@ -15,7 +14,7 @@ .title { font-size: 16px; - color: var(--ti-common-color-text-primary); + color: var(--ti-base-notice-content-color); font-weight: bold; padding-left: 6px; } @@ -26,17 +25,18 @@ font-size: 14px; cursor: pointer; text-decoration: none; - + color: var(--ti-base-notice-content-color); &:hover { - color: var(--ti-common-color-bg-hover); + color: var(--ti-base-notice-content-color); text-decoration: underline; + font-weight: 600; } } } .side-href { display: block; - color: #252b3a; + color: var(--ti-common-color-text-primary); word-break: keep-all; height: 14px; margin-bottom: 24px; @@ -47,7 +47,7 @@ span:first-of-type { float: left; - color: var(--ti-common-color-icon-normal); + color: var(--ti-base-notice-tip-color); } .notice-time { @@ -58,8 +58,8 @@ &:hover, &:active { - color: var(--ti-common-color-dash-line-hover); text-decoration: none; + font-weight: 600; } &:link, @@ -67,12 +67,14 @@ text-decoration: none; } + & .side-title { display: inline-block; width: 55%; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; + color: var(--ti-base-notice-content-color); } } } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-head/user-info-head.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-head/user-info-head.component.scss index 206ae216..435002b1 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-head/user-info-head.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-head/user-info-head.component.scss @@ -3,8 +3,9 @@ .user-panel-head { position: relative; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - background: var(--ti-common-color-bg-white-normal); + background-image: url('../../../../../../assets/img/person-bg.png'); + background-repeat: no-repeat; + background-size: cover; padding: 30px 25px 22px 30px; } @@ -24,17 +25,19 @@ margin-left: 48px; width: auto; font-size: 12px; - color: var(--ti-common-color-text-primary); + color: #fff; line-height: 16px; } .user-info-expense-center { + font-size: 14px; + line-height: 20px; position: absolute; right: 0px; display: inline-block; - + & > a { - color: var(--ti-common-color-text-highlight); + color: #fff; } } @@ -50,24 +53,26 @@ .auth-status-style { position: relative; - padding: 8px 10px 5px 20px; - font-size: 14px; - line-height: 20px; + padding: 5px 10px 5px 20px; + font-size: 16px; + line-height: 22px; text-align: left; - height: 16px; + height: 25px; .real-name { position: absolute; - top: 8px; - left: 70px; + top: 4px; + left: 88px; background-image: url('../../../../../../assets/img/real-name.png'); background-repeat: no-repeat; - height: 16px; - width: 54px; + height: 20px; + width: 76px; } > a { - color: var(--ti-common-color-icon-normal); + display: inline-block; + width: 160px; + color: #fff; margin-right: 8px; } @@ -78,8 +83,8 @@ } .hello-lable { - color: #86909c; - margin: 12px 0 0 20px; - line-height: 20px; + color: #fff; + margin-left: 20px; + line-height: 24px; font-size: 14px; } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-panel/user-info-panel.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-panel/user-info-panel.component.scss index 62e53ef1..b677a6a7 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-panel/user-info-panel.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/console-home/widgets/user-info/user-info-panel/user-info-panel.component.scss @@ -4,7 +4,6 @@ height: 80px; display: flex; flex-direction: row; - a { text-decoration: none; } @@ -23,7 +22,7 @@ .panel-number-common { font-size: 24px; - color: #202e54; + color: #fff; text-align: left; padding: 26px 30px 8px 15px; line-height: 28px; @@ -35,7 +34,7 @@ top: 45%; right: 7px; height: 27%; - border-right: 1px solid #979797; + border-right: 1px solid #fff; opacity: 0.2; } @@ -44,7 +43,7 @@ } .panel-text-common { - color: #86909c; + color: #dfe1e6; font-size: 14px; text-align: left; white-space: nowrap; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/non-support-region/non-support-content/non-support-content.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/non-support-region/non-support-content/non-support-content.component.scss index 8b224935..d2ec81b3 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/non-support-region/non-support-content/non-support-content.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/non-support-region/non-support-content/non-support-content.component.scss @@ -2,18 +2,18 @@ .non-support-container { @include t-pro-product-card; - height: 800px; -} - -.non-support-content { + min-height: calc(100vh - 201px); display: flex; - margin: 140px auto 0; - line-height: 1.5; justify-content: center; + align-items: center; + background: var(--ti-base-card-bg-color); } -.non-support-content-container { - padding-left: 30%; +.non-support-content-container{ + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; } .non-supportregion-image { @@ -22,21 +22,21 @@ height: 240px; background: url('/assets/img/background/nonsupportregion.png') no-repeat; background-size: 100%; - margin-left: 30px; margin-bottom: 20px; } .non-supportregion-label { - color: #252b3a; + color: var(--ti-base-model-text-color); font-size: 24px; padding-bottom: 8px; - font-weight: normal; + font-weight: bold; line-height: 36px; font-family: PingFang SC, PingFang SC-PingFang SC; } .support-regionlist-container { - width: 78%; + width: 500px; + margin-left: 165px; margin-bottom: 40px; line-height: var(--ti-common-line-height-number); } @@ -50,7 +50,7 @@ } .support-regionlist-regions { - display: flex; + display:flex; flex-wrap: wrap; } @@ -59,7 +59,7 @@ background: #e9edfa; border-radius: 2px 0px 0px 2px; margin-bottom: var(--ti-common-space-base); - color: #252b3a; + color: #2a2b3a; text-align: center; line-height: 28px; font-size: 14px; @@ -71,10 +71,10 @@ cursor: pointer; word-break: break-word; &:hover { - background: #5e7ce0; + background: var(--ti-base-color-brand-6); color: #ffffff; section:after { - border-top-color: var(--ti-common-color-text-link-hover); + border-top-color: var(--ti-common-color-text-link-hover); } } } @@ -82,19 +82,19 @@ .support-regionlist-icon { display: inline-block; padding-left: var(--ti-common-space-2x); - &:after { - content: ''; - width: 0; - height: 0; - border-left: 4px solid transparent; - border-right: 4px solid transparent; - border-top: 5px solid var(--ti-common-color-text-link); - cursor: pointer; - display: inline-block; - vertical-align: middle; + &:after{ + content: ''; + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 5px solid var(--ti-common-color-text-link); + cursor: pointer; + display: inline-block; + vertical-align: middle; } } -.support-regionlist-icon-transform:after { +.support-regionlist-icon-transform:after{ transform: rotate(180deg); } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.html b/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.html index b21aeae7..b7f4b769 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.html @@ -29,3 +29,4 @@ + diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.scss index f5afbf93..66d5d25c 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/pages.component.scss @@ -1,3 +1,5 @@ + + t-pro-layout-header { display: flex; } @@ -10,6 +12,7 @@ t-pro-layout-sidebar { & > t-pro-navbar { flex: 1 1 0%; overflow: hidden auto; + background-color: var(--ti-common-color-bg-white-normal); } & > t-pro-navbar { @@ -24,3 +27,13 @@ t-pro-layout-sidebar { .side-space { margin: 0 8px; } + + +// 模态框公共样式 +::ng-deep .ti3-modal-content { + border-radius: 8px !important; + box-shadow: 0px 0px 30px 15px rgba(37, 43, 58, .15) !important; +} +::ng-deep .ti3-alert-label { + color: var(--ti-common-color-bg-light-normal) !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/recommend-activity/recommend-activity.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/recommend-activity/recommend-activity.component.scss index f1db04ee..c52a0214 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/recommend-activity/recommend-activity.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/recommend-activity/recommend-activity.component.scss @@ -3,7 +3,7 @@ .recommend-activity { margin-top: 30px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); + background: var(--ti-base-card-bg-color) !important; height: 240px; @include t-pro-product-card; } @@ -11,13 +11,14 @@ .section-title { position: relative; width: 100%; - color: #252b3a; + color: var(--ti-common-color-text-primary); padding-bottom: 30px; font-size: 16px; line-height: 16px; font-family: PingFang SC, PingFang SC-PingFang SC; } + .smart-recommends-wrapper { display: flex; flex-wrap: wrap; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.html b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.html index 84cbee6b..9cd77a9d 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.html @@ -7,9 +7,9 @@
{{ "result.failure.label" | translate }}
- {{ "result.failure.tipLeft" | translate }}{{ "result.failure.tipLeft" | translate }}¥65.76 - {{ "result.failure.tipRight" | translate }} + {{ "result.failure.tipRight" | translate }} {{ "result.failure.detail" | translate }}
diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.scss index 5cad861e..948727ca 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-failure/result-failure.component.scss @@ -1,11 +1,11 @@ -@import 'src/app/@shared/styles/common.scss'; +@import "src/app/@shared/styles/common.scss"; .result-failure { @include t-pro-product-card; text-align: center; height: 620px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); + background: var(--ti-base-card-bg-color); } .pay-failure-icon-container { @@ -29,6 +29,7 @@ font-size: 24px; margin-top: 30px; line-height: 36px; + color: var(--ti-common-content-text-color); } } @@ -55,3 +56,9 @@ border-radius: 4px; margin-top: 10px; } + +.left, +.right { + color: var(--ti-common-content-text-color); +} + diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.html b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.html index 2092f9b1..462fd007 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.html +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.html @@ -7,7 +7,7 @@
{{ "result.success.label" | translate }}
- {{ "result.success.tip" | translate }}{{ "result.success.tip" | translate }}¥65.76{{ "result.success.dot" | translate }} {{ "result.viewOrder" | translate }} diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.scss index 9938b85f..b9cb3ae9 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/result/widget/result-success/result-success.component.scss @@ -1,11 +1,11 @@ -@import 'src/app/@shared/styles/common.scss'; +@import "src/app/@shared/styles/common.scss"; .result-success { @include t-pro-product-card; text-align: center; height: 620px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); + background: var(--ti-base-card-bg-color); } .pay-succeed-icon-container { @@ -30,6 +30,7 @@ font-size: 24px; margin-top: 30px; line-height: 36px; + color: var(--ti-common-content-text-color); } .pay-succeed-detail { @@ -47,3 +48,7 @@ border-radius: 4px; margin-top: 10px; } + +.left { + color: var(--ti-common-content-text-color); +} diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.scss index bec4ccde..80a09fc6 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.scss @@ -6,10 +6,9 @@ .obs-list { @include t-pro-product-card; - margin-bottom: 24px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - height: 720px; + background: var(--ti-base-card-bg-color); + min-height: calc(100vh - 265px); } .alert-head { @@ -17,3 +16,7 @@ width: 100%; display: block; } + +::ng-deep .ti3-alert-prompt-container { + border: none !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.ts index 32ec185f..bc42e3fe 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/bucket-list/bucket-list.component.ts @@ -6,48 +6,48 @@ import { BucketListHeadI18nPrefix } from '@shared/tiny-pro'; @Component({ selector: 't-pro-bucket-list', templateUrl: './bucket-list.component.html', - styleUrls: ['./bucket-list.component.scss'], + styleUrls: ['./bucket-list.component.scss'] }) export class BucketListComponent { public bucketConfig: GuideheadConfig = { helptip: { label: '', - iconTip: '', + iconTip: '' }, buttons: [ { id: '1', label: this.translate.instant(`${BucketListHeadI18nPrefix}creatBucket`), - color: 'danger', + color: 'primary' }, { id: '2', - label: this.translate.instant(`${BucketListHeadI18nPrefix}buyPackages`), - }, - ], + label: this.translate.instant(`${BucketListHeadI18nPrefix}buyPackages`) + } + ] }; public feedbackList: Array = [ { icon: 'information-circle-outline', - label: `${BucketListHeadI18nPrefix}openSourceNotice`, + label: `${BucketListHeadI18nPrefix}openSourceNotice` }, { icon: 'happy-outline', - label: `${BucketListHeadI18nPrefix}evaluate`, + label: `${BucketListHeadI18nPrefix}evaluate` }, { icon: 'paper-plane-outline', - label: `${BucketListHeadI18nPrefix}processFlow`, + label: `${BucketListHeadI18nPrefix}processFlow` }, { icon: 'book-outline', - label: `${BucketListHeadI18nPrefix}help`, + label: `${BucketListHeadI18nPrefix}help` }, { icon: 'list-outline', - label: `${BucketListHeadI18nPrefix}taskManage`, - }, + label: `${BucketListHeadI18nPrefix}taskManage` + } ]; public flag: string = 'buckets'; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.scss index 1e4ec2ec..dcf1218a 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.scss @@ -1,4 +1,4 @@ -@import 'src/app/@shared/styles/common.scss'; +@import "src/app/@shared/styles/common.scss"; .service-list { @include t-pro-product-card; @@ -6,16 +6,14 @@ .contracts { @include t-pro-product-card; - margin-bottom: 24px; border-radius: 8px; - box-shadow: 0px 0px 8px 8px rgba(169, 174, 184, 0.05); - height: 780px; + background: var(--ti-base-card-bg-color); + min-height: calc(100vh - 201px); } -::ng-deep .ti3-modal-content { +::ng-deep ti-modal-wrapper .modal-class-create { width: 589px; - border-radius: 8px !important; - box-shadow: 0px 0px 30px 15px rgba(37, 43, 58, 0.15) !important; + margin-top: 250px; } .alert { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.ts index 6a512848..67840b38 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/contracts/contracts.component.ts @@ -27,7 +27,7 @@ export class ContractsComponent { label: this.translate.instant(`${ContractsListHeadI18nPrefix}createContract`), color: 'danger', click: (): void => { - this.showModal(this.modal); + this.showModal(this.modal) this.operation = 'create'; this.isRefreshTable = false; }, @@ -48,16 +48,21 @@ export class ContractsComponent { public showModal(content: TemplateRef): void { this.tiModal.open(content, { id: 'modal', + // modalClass接口:接收弹窗的自定义样式 + modalClass: 'modal-class-create' }); } - - constructor(private translate: TranslateService, private tiModal: TiModalService) {} + + constructor( + private translate: TranslateService, + private tiModal: TiModalService + ) {} public openHalfModal($event: any): void { this.rowData = $event; this.operation = 'edit'; this.isRefreshTable = false; - this.showModal(this.modal); + this.showModal(this.modal) } public openAlert(): void { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/service-list.module.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/service-list.module.ts index b95a5bb4..cef83389 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/service-list.module.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/service-list.module.ts @@ -26,5 +26,5 @@ import { ContractsComponent } from './contracts/contracts.component'; ], imports: [CommonModule, SharedModule, ServiceListRoutingModule], }) -export class ServiceListModule {} -export { GuideheadConfig } from './widgets/list-guide-head/list-guide-head.component'; +export class ServiceListModule { } +export type { GuideheadConfig } from './widgets/list-guide-head/list-guide-head.component'; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-modal/contracts-modal.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-modal/contracts-modal.component.scss index c7d4eda6..c1925fbc 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-modal/contracts-modal.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-modal/contracts-modal.component.scss @@ -6,14 +6,14 @@ } .main-content { - margin-left: 20px; + margin: 0 28px; } .ti3-form-label { font-size: 14px !important; - padding-right: 40px !important; + padding-right: 49px !important; } -.ti3-form-content { +.ti3-form-content{ margin-left: 30px; } .name-format { @@ -27,7 +27,7 @@ height: 100px; } -.ti3-textarea-container > textarea { +.ti3-textarea-container>textarea{ font-size: 14px !important; } @@ -44,7 +44,7 @@ } position: absolute; bottom: 60px; - left: 148px; + left: 164px; } .confirm-button { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.scss index 60e50456..393e3f90 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.scss @@ -1,6 +1,6 @@ .list-content { padding: 20px 9px 0 0; - background-color: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color) !important; } .current-modal-container { @@ -31,21 +31,21 @@ .delete-warning { font-size: 24px; - color: #202e54; + color: var(--ti-common-color-text-primary); } -.constract-name { +.constract-name{ font-size: 16px; color: #4e5969; margin: 20px 0; } -.input-prompt { +.input-prompt{ margin: 10px 0; - color: #4e5969; + color: #4e5969;; } -.input-alert { +.input-alert{ height: 20px; color: red; margin-bottom: 10px; @@ -66,10 +66,36 @@ position: absolute; } -.delete-modal-class { - .ti3-modal-content { - width: 558px; - border-radius: 8px !important; - box-shadow: 0px 0px 30px 15px rgba(37, 43, 58, 0.15) !important; - } +::ng-deep ti-modal-wrapper .delete-modal-class { + width: 558px; + margin-top: 250px; +} + +a { + color: var(--ti-base-link-a-color) !important; +} + +::ng-deep .ti3-action-menu-item { + color: var(--ti-base-link-a-color) !important; +} + +::ng-deep .ti3-action-menu-item { + color: var(--ti-base-link-a-color) !important; } + +::ng-deep .ti3-table>table>thead>tr>th:not(:last-child):after { + background: var(--ti-base-table-border-color) !important; +} + +::ng-deep .ti3-table>table>tbody>tr>td { + border-bottom-color: var(--ti-base-table-border-bottom-color) !important; + color: var(--ti-base-table-text-color) !important; +} + +::ng-deep .ti3-table>table>thead>tr>th { + border-bottom-color: var(--ti-base-table-border-bottom-color) !important; +} + +::ng-deep .ti3-table>table>tbody>tr { + background: var(--ti-base-card-bg-color) !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.ts index fbc336ff..d2c4df65 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/contracts-table/contracts-table.component.ts @@ -9,9 +9,7 @@ import { Filter } from '../../service-list-filter'; @Component({ selector: 't-pro-contracts-table', templateUrl: './contracts-table.component.html', - styleUrls: ['./contracts-table.component.scss'], - styles: ['.modal-class { width:450px !important; }'], - encapsulation: ViewEncapsulation.None, + styleUrls: ['./contracts-table.component.scss'] }) export class ContractsTableComponent implements OnInit { @Input() isRefreshTable: Boolean = false; @@ -86,7 +84,10 @@ export class ContractsTableComponent implements OnInit { return function (pre: { [x: string]: any }, next: { [x: string]: any }) { const valuePre = pre[property]; const valueNext = next[property]; - return new Date(JSON.parse(JSON.stringify(valueNext))).getTime() - new Date(JSON.parse(JSON.stringify(valuePre))).getTime(); + return ( + new Date(JSON.parse(JSON.stringify(valueNext))).getTime() - + new Date(JSON.parse(JSON.stringify(valuePre))).getTime() + ); }; } @@ -105,7 +106,7 @@ export class ContractsTableComponent implements OnInit { this.totalNumber = data?.count ?? 0; this.loading = false; } - + async onUpdateSrcDate(params: { query: string; field: string }) { let interfaceData = await this.contractsService.getContractsData(params); let sortData = interfaceData.sort(this.sortTime('updatedAt') as any); @@ -166,6 +167,7 @@ export class ContractsTableComponent implements OnInit { this.open = false; this.tiModal.open(this.modal, { id: 'myModal1', + // modalClass接口:接收弹窗的自定义样式 modalClass: 'delete-modal-class', context: { name: 'component', @@ -191,9 +193,9 @@ export class ContractsTableComponent implements OnInit { } else { modalRef.destroy(reason); } - }, + }, close: (modalRef: TiModalRef): void => {}, - + dismiss: (modalRef: TiModalRef): void => {}, }); } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.scss index 1e7dbd16..2b75db8c 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.scss @@ -1,10 +1,10 @@ .list-content { padding: 20px 9px 0 0; - background-color: var(--ti-common-color-bg-white-normal); + background: var(--ti-base-card-bg-color) !important; } .obs-common-mr8 { - color: #5e7ce0; + color: #5B96FF; margin-right: 15px; } @@ -21,8 +21,42 @@ margin-top: 10px; } -::ng-deep .ti3-modal-content { +::ng-deep ti-modal-wrapper .modal-class-detail { width: 589px; - border-radius: 8px !important; - box-shadow: 0px 0px 30px 15px rgba(37, 43, 58, 0.15) !important; + margin-top: 256px; +} + +a { + color: var(--ti-base-link-a-color) !important; +} + +::ng-deep .ti3-action-menu-item { + color: var(--ti-base-link-a-color) !important; +} + +::ng-deep .ti3-action-menu-item { + color: var(--ti-base-link-a-color) !important; +} + +::ng-deep .ti3-table>table>thead>tr>th:not(:last-child):after { + background: var(--ti-base-table-border-color) !important; +} + +::ng-deep .ti3-table>table>tbody>tr>td { + border-bottom-color: var(--ti-base-table-border-bottom-color) !important; + color: var(--ti-base-table-text-color) !important; +} + +::ng-deep .ti3-table>table>thead>tr>th { + border-bottom-color: var(--ti-base-table-border-bottom-color) !important; +} + +::ng-deep .ti3-table>table>tbody>tr { + background: var(--ti-base-card-bg-color) !important; +} + +::ng-deep .guide-head-button-left-space { + color: var(--ti-base-button-default-border-color) !important; + background: none !important; + border-color: var(--ti-base-button-default-border-color) !important; } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.ts b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.ts index ecc12ffb..ca0c3a6f 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.ts +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-detail-content/obs-table/obs-table.component.ts @@ -1,7 +1,19 @@ import { Component, OnInit, ViewChild, TemplateRef } from '@angular/core'; import { TranslateService } from '@ngx-translate/core'; -import { TiActionmenuItem, TiTableColumns, TiTableRowData, TiTableSrcData, TiHalfmodalComponent, TiModalService } from '@opentiny/ng'; -import { BucketDetailTableI18nPrefix, TProTranslatePipe, Bucket, ObsStorageClass } from '@shared/tiny-pro'; +import { + TiActionmenuItem, + TiTableColumns, + TiTableRowData, + TiTableSrcData, + TiHalfmodalComponent, + TiModalService +} from '@opentiny/ng'; +import { + BucketDetailTableI18nPrefix, + TProTranslatePipe, + Bucket, + ObsStorageClass, +} from '@shared/tiny-pro'; import { ObsService } from 'src/app/@core/services/obs.service'; import { LogicUtilService } from 'src/app/@core/services/util.service'; @@ -29,7 +41,7 @@ export class ObsTableComponent implements OnInit { tip: `${BucketDetailTableI18nPrefix}imageProcessing`, }, ]; - public none: string = '--'; + public none : string = '--' public currentPage: number = 1; public totalNumber: number = 0; public pageSize: { options: Array; size: number } = { @@ -83,7 +95,12 @@ export class ObsTableComponent implements OnInit { public obsStorageClass: any = ObsStorageClass; - constructor(private translate: TranslateService, private tProTrans: TProTranslatePipe, private obsService: ObsService, private tiModal: TiModalService) {} + constructor( + private translate: TranslateService, + private tProTrans: TProTranslatePipe, + private obsService: ObsService, + private tiModal: TiModalService + ) {} ngOnInit(): void { this.columns = this.tProTrans.transform(this.columns); @@ -102,10 +119,14 @@ export class ObsTableComponent implements OnInit { this.srcData.data = this.obsService.getObsTableData(); } - public dataToItemsFn: (data: any) => Array = (data: any) => { + public dataToItemsFn: (data: any) => Array = ( + data: any + ) => { const items: Array = [ { - label: this.translate.instant(`${BucketDetailTableI18nPrefix}createStorage`), + label: this.translate.instant( + `${BucketDetailTableI18nPrefix}createStorage` + ), }, { label: this.translate.instant(`${BucketDetailTableI18nPrefix}delete`), @@ -126,6 +147,8 @@ export class ObsTableComponent implements OnInit { } this.tiModal.open(content, { id: 'myModal', + // modalClass接口:接收弹窗的自定义样式 + modalClass: 'modal-class-detail' }); } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-guide-head/list-guide-head.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-guide-head/list-guide-head.component.scss index 324eadd3..a3520750 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-guide-head/list-guide-head.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-list/widgets/list-guide-head/list-guide-head.component.scss @@ -2,31 +2,37 @@ justify-content: flex-end; display: flex; align-items: center; - border-right: 1px solid #dfe1e6; + border-right: 1px solid #DFE1E6; margin-right: 20px; + ::ng-deep .ti3-select-dominator-container { + border-color: #DFE1E6 !important; + } + ::ng-deep .ti3-searchbox-container { + border-color: #DFE1E6 !important; + } div { padding-right: 20px; } } -.contracts-guide-head { +.contracts-guide-head{ justify-content: space-between; } -.contracts-select { +.contracts-select{ margin-right: 20px; } -.list-guide-head-container { - display: flex; +.list-guide-head-container{ + display: flex } -.guide-head-content { - flex: 1; - align-self: center; +.guide-head-content{ + flex: 1; + align-self: center } .guide-head-button { - margin-right: 10px; + margin-right:10px; border-radius: 4px; } @@ -85,6 +91,7 @@ display: inline-block; font-size: 16px; font-weight: 700; + color: var(--ti-base-model-text-color); } .guide-head-helptip-icon { @@ -102,3 +109,4 @@ margin-left: 8px; } } + diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/growth-map/growth-map.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/growth-map/growth-map.component.scss index dbabe776..85ea3953 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/growth-map/growth-map.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/growth-map/growth-map.component.scss @@ -2,6 +2,7 @@ .growth-map { min-height: 600px; @include t-pro-product-card; + background: var(--ti-base-card-bg-color); } ::ng-deep .ti3-tab-li { @@ -10,7 +11,7 @@ } .box-title { - color: #252b3a; + color: var(--ti-common-content-text-color); font-size: 16px; font-weight: 500; line-height: 16px; @@ -24,7 +25,7 @@ .tab-desc { margin-top: 8px; font-size: 14px; - color: #8a8e99; + color: var(--ti-common-content-text-color); line-height: 24px; } @@ -39,11 +40,11 @@ .overview_label_text { font-size: 14px; font-weight: 500; - color: #202e54; + color: var(--ti-common-content-text-color); line-height: 24px; } -.overview_label_text:nth-child(n + 2) { +.overview_label_text:nth-child(n+2) { margin-top: 10px; } @@ -52,7 +53,7 @@ display: flex; justify-content: flex-start; align-items: center; - + .round-box { width: 4px; height: 4px; @@ -63,7 +64,7 @@ } > a { - color: #252b3a; + color: var(--ti-common-content-text-color); } &:hover { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-creation/service-creation.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-creation/service-creation.component.scss index 93cab045..d550d169 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-creation/service-creation.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-creation/service-creation.component.scss @@ -3,6 +3,7 @@ .service-creation { height: 100%; @include t-pro-product-card; + background: var(--ti-base-card-bg-color); } .new-user-content { @@ -12,7 +13,7 @@ font-size: 24px; font-weight: 400; text-align: left; - color: #252b3a; + color: var(--ti-base-color-common-7); line-height: 33px; } @@ -32,7 +33,7 @@ .content-item { width: calc((100% - 20px) / 2); padding: var(--ti-common-space-5x) 30px 30px; - background-color: rgba($color: #eff2f8, $alpha: 0.5); + background-color: var(--ti-dark-server-backup-color-bg, rgba($color: #eff2f8, $alpha: 0.5)); border-radius: 8px; .content-item-head { @@ -48,7 +49,7 @@ .head-title { font-size: 18px; font-weight: 500; - color: #202e54; + color: var(--ti-base-color-common-7); line-height: 25px; } diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-introduce/service-introduce.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-introduce/service-introduce.component.scss index 466140f9..4cd8c7f2 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-introduce/service-introduce.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-overview/widgets/service-introduce/service-introduce.component.scss @@ -6,7 +6,7 @@ width: 100%; display: flex; justify-content: space-between; - + background: var(--ti-base-card-bg-color); .head-text { width: 72%; @@ -14,6 +14,7 @@ font-size: 24px; font-weight: 400; line-height: 33px; + color: var(--ti-base-color-common-7); } .head-text-des { diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/service-purchase.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/service-purchase.component.scss index a9826848..b5fcd5d5 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/service-purchase.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/service-purchase.component.scss @@ -1,20 +1,25 @@ @import 'src/app/@shared/styles/common.scss'; .purchase-box { - @include t-pro-product-card; - padding: 40px 30px 10px; - - ::ng-deep .ti3-form .ti3-form-label { - font-size: 14px !important; - } + @include t-pro-product-card; + padding: 40px 30px 10px; + background: var(--ti-base-card-bg-color); + ::ng-deep .ti3-form .ti3-form-label { + font-size: 14px !important; + } } .buy-box { - @include t-pro-product-card; - margin-top: 20px; - padding: 30px 30px; + @include t-pro-product-card; + margin-top: 20px; + padding: 30px 30px; + background: var(--ti-base-card-bg-color); } ::ng-deep .ti3-form .ti3-form-content { - padding-bottom: 20px !important; + padding-bottom: 20px !important; } +::ng-deep .ti3-btn-item { + background-color: var(--ti-common-color-bg-white-emphasize) !important; + color: var(--ti-common-color-text-highlight) !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/buy-layer/buy-layer.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/buy-layer/buy-layer.component.scss index 4c6bc348..d404101c 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/buy-layer/buy-layer.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/buy-layer/buy-layer.component.scss @@ -56,3 +56,10 @@ font-size: 14px; } } + +a { + color: var(--ti-base-link-a-color) !important; + &:hover{ + text-decoration: underline; + } +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/region-select/region-select.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/region-select/region-select.component.scss index 370c3023..f22a36e4 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/region-select/region-select.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/region-select/region-select.component.scss @@ -12,3 +12,8 @@ display: inline-block; margin-right: 4px; } +::ng-deep .ti3-active .ti3-btn-item-radio { + background-color: var(--ti-base-color-brand-6) !important; + color: var(--ti-base-color-white) !important; + font-weight: 600 !important; +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-configuration/service-configuration.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-configuration/service-configuration.component.scss index e0877d05..88347dcc 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-configuration/service-configuration.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-configuration/service-configuration.component.scss @@ -7,7 +7,7 @@ min-width: 200px; flex: 0 0 22%; margin-right: 12px; - border: 1px solid #adb0b8; + border: 1px solid var(--ti-common-color-bg-white-emphasize); border-radius: 2px; cursor: pointer; @@ -25,7 +25,7 @@ .detail-title { text-align: center; - background-color: var(--ti-common-color-bg-light-normal); + background-color: var(--ti-common-color-bg-white-emphasize); height: 52px; line-height: 52px; @@ -43,7 +43,7 @@ .detail-item { margin-top: 12px; - color: #252b3a; + color: var(--ti-common-color-text-primary); span { display: inline-block; diff --git a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-image/service-image.component.scss b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-image/service-image.component.scss index 6f4ebedc..99815c15 100644 --- a/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-image/service-image.component.scss +++ b/packages/toolkits/pro/template/tinyng/src/app/pages/service-purchase/widgets/service-image/service-image.component.scss @@ -14,7 +14,6 @@ .item-hover:hover { border: 1px solid var(--ti-common-color-bg-emphasize); - box-shadow: 0 2px 8px 0 rgb(94 124 224 / 30%); } .select-item-box { @@ -30,18 +29,20 @@ } .select-item-unChecked { - border: 1px solid #adb0b8; + border: 1px solid var(--ti-common-color-bg-white-emphasize); } .select-item-checked { background-color: var(--ti-common-color-bg-light-normal); - ti-select { - --ti-input-bg-color: var(--ti-common-color-bg-light-normal); - } + color: #fff; + font-weight: 600; + ti-select{ + --ti-input-bg-color: var(--ti-common-color-bg-light-normal); +} border: 1px solid var(--ti-base-color-brand-4); - box-shadow: 0 2px 8px 0 rgb(94 124 224 / 30%); } + .light-image-icon { position: relative; height: 30px; @@ -83,16 +84,18 @@ } .select-container-border { - border-top: 1px solid var(--ti-common-color-line-normal); + border-top: 1px solid var(--ti-common-color-bg-white-emphasize) !important; border-left: none; border-right: none; border-bottom: none; } .select-hover:hover { - border-top: 1px solid var(--ti-common-color-line-normal); + border-top: 1px solid var(--ti-common-color-bg-white-emphasize); } + + .ti-select-wrapper { display: inline-block; width: 192px; diff --git a/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/console-home.ts b/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/console-home.ts index 77223e2f..575abb9b 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/console-home.ts +++ b/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/console-home.ts @@ -100,5 +100,13 @@ export default { websiteTutorial: 'Build website business', uploadTutorial: 'Quickly upload files through OBS console', }, + iframeDemo: { + themeColor: "Theme color", + fontSize: "font size", + fontWeight: "font weight", + borderRadius: "Border Fillet", + borderRadius0: "right angle", + borderRadius1: "Rounded corners" + }, }, }; diff --git a/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/personalize.ts b/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/personalize.ts index cc739184..e79be601 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/personalize.ts +++ b/packages/toolkits/pro/template/tinyng/src/assets/i18n/en-US/personalize.ts @@ -1,12 +1,18 @@ export default { personalize: { - title: 'Personalize', + title: 'Personalized Configuration', themes: 'Themes', 'tiny-hws-theme': 'tiny-hws-theme', + 'tiny-hws-theme-feature': 'Science and technology, exploration, research, precision, tolerance', 'tiny-sweet-theme': 'tiny-sweet-theme', + 'tiny-sweet-theme-feature': 'Bright, sensual, warm, positive, energetic', 'tiny-provence-theme': 'tiny-provence-theme', + 'tiny-provence-theme-feature': 'Elegant, romantic, gentle, mysterious, noble', 'tiny-deep-theme': 'tiny-deep-theme', + 'tiny-deep-theme-feature': 'Smooth, Neutral, Space, Strength, Hard', 'tiny-dark-theme': 'tiny-dark-theme', + 'tiny-dark-theme-feature': 'Deep, decisive, brave, tenacious, yearning', + 'tiny-recommend-theme': 'tiny-recommended-theme', 'tiny-customize-theme': 'tiny-customize-theme', }, -}; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/console-home.ts b/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/console-home.ts index bbf732f4..26cee89b 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/console-home.ts +++ b/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/console-home.ts @@ -90,5 +90,13 @@ export default { websiteTutorial: '搭建网站业务', uploadTutorial: '快速通过OBS控制台上传文件', }, + iframeDemo: { + themeColor: "主题色", + fontSize: "字号", + fontWeight: "字重", + borderRadius: "边框圆角", + borderRadius0: "直角", + borderRadius1: "圆角" + }, }, }; diff --git a/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/personalize.ts b/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/personalize.ts index e8f58947..4b9ce24e 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/personalize.ts +++ b/packages/toolkits/pro/template/tinyng/src/assets/i18n/zh-CN/personalize.ts @@ -1,12 +1,19 @@ export default { personalize: { - title: '个性化', + title: '个性化配置', themes: '主题', 'tiny-hws-theme': '默认主题', + 'tiny-hws-theme-feature': '科技、探索、钻研、精尖、包容', 'tiny-sweet-theme': '蜜糖主题', + 'tiny-sweet-theme-feature': '明快、感性、温暖、积极、活力', 'tiny-provence-theme': '紫罗兰主题', + 'tiny-provence-theme-feature': '优雅、浪漫、温柔、神秘、高贵', 'tiny-deep-theme': '深邃夜空主题', + 'tiny-deep-theme-feature': '平稳、中性、空间、力量、坚硬', 'tiny-dark-theme': '深色主题', + 'tiny-dark-theme-feature': '深沉、果断、勇敢、坚韧、向往', + 'tiny-recommend-theme': '推荐主题', 'tiny-customize-theme': '自定义主题', + 'tiny-light-theme': '浅色主题', }, }; diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/console.svg b/packages/toolkits/pro/template/tinyng/src/assets/img/console.svg new file mode 100644 index 00000000..d8d41182 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/img/console.svg @@ -0,0 +1,14 @@ + + + console + + + + + + + + + + + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/favicon.ico b/packages/toolkits/pro/template/tinyng/src/assets/img/favicon.ico index 47d9db4c6c053b4e241ea3bacc83e83a55674bb4..826d98acb7e2a268f6ede5f86bcec188adda00f8 100644 GIT binary patch delta 523 zcmV+m0`&dG1ET~M000310RRvX000317yu0d000&M00599e*ghpGqDe$SR5(w~khxC7Komu% zp`)hco8l~FAuEuu2my*&5|TjJ!zMt80%}SEA3znLq~Q}N;w>v%>&JWJu`x&p3JR|D zG@k1-*K^JOf1lu%^_w>=g>!D+G7at+xW}xqGl71VdBq}7Md$*@UcWx$m{s;@Ub1Uk z{o?2!D45qknpMCf*Kw`S2%DYWLr?DbEt5NWtqF@w?LEQt{u5*mpJDds1-Kc)0Pma? zK$BVPq^9<|7I@$SQR9^kOl)^xa;F0n#?44khrojBe*`4U&4dH)b`k740Yj@zNN=aWlT$fbgR3)Cd=} zLGqGi3mU;74x)m265t;cx4LX z=Fn<`ZKqKU3h>RV1Ac;VAHuIu7za`G-X03$CS8$w5ll5CS@GKt?dfJ5M7aZKgv}WC zeTWpS8a`R^eh1onNv=Ogvf3x?4^a(ow(fBsrV+1yr@(~XD;|FkWAB{ddF@I1jPf979)QFj7da6RCocM!LdslVHm*S-}ioZkt77umI|7o+8bIhqZ#7X z3=Ve4sJoMcgGz^hLkA&~SqkmH(2f#x=+F)U1Fd5mN=eg2g$Ao2*E3%4zBZt61TQUl z9>rhfjnhS?!U|9XG{Xfz(-^7l)+YB=dE<0Zsc?@G7$eU`sjz>-h?EK|7EokBsgUB? zT#{D%nvaLS`0+C!Mo|FGfX=bcfHr-CqZB5*k^emLmZ2UR=dZnlVEKr%dM62IIb5GM~J95T)O80 zQ4{wy>7=l>l;wXe`sw`UOK$kT4Id6YE-nKSws7>VhXS%0%}mZ_;-2Qy(G^h^16(hp z-f*cmT>8>UVSDuf(^EF3LW=Hrz}xqi+!Fr5^+LAZobmm{r!SopqAVZ)G()&v$a<|y z-Wj9S?hz3P(Bwb0+C2s|#TcnFB4ebgzchEgJ}JKVtdu2r1mpl=xBxgXMpk!glly-F XmhprgjvC^C00000NkvXXu0mjf5-ZIX diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/opentiny-logo.svg b/packages/toolkits/pro/template/tinyng/src/assets/img/opentiny-logo.svg index b0a3620a..11fdf7f7 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/img/opentiny-logo.svg +++ b/packages/toolkits/pro/template/tinyng/src/assets/img/opentiny-logo.svg @@ -1,20 +1,37 @@ - - - - - - - - - - - - - + + + logo-top备份 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/page-logo.svg b/packages/toolkits/pro/template/tinyng/src/assets/img/page-logo.svg new file mode 100644 index 00000000..00acc40e --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/img/page-logo.svg @@ -0,0 +1,15 @@ + + + 编组 7 + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/person-bg.png b/packages/toolkits/pro/template/tinyng/src/assets/img/person-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..60fb2b40e236d506b4558d5fcf4f5e018b403574 GIT binary patch literal 61229 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 z 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 yzW&w6>&u_Ne!Tp`Q literal 0 HcmV?d00001 diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/real-name.png b/packages/toolkits/pro/template/tinyng/src/assets/img/real-name.png index c0c18cba130cb61981b98d01b3be763112cd42a3..0a00631d0aa1dfa6ffec1d7f12e10ba078bbb8a3 100644 GIT binary patch literal 2646 zcmV-c3aRypP)Px<5J^NqR9HuaSb2~X)fxZ2?w)&h24;6zSZ=w*m;wcb(s0$f#E5_>3J9f!h?X%W zl`<6)Dxp$I2v8FOAJfM>fA9Bw-|zbf`ne8fKAKEXT$5J{GcBb!ut;c_Qj35Bgs?w;**65Bl!6fF z6>DR^bK0;E_Je3#G9jhjcN$8jJV>6$XmxH(Izhah=*_BiB^%c2@8ZCyQnHp3m>?gJ-w!|iJ z;NbUSc@i*e)#6LZj@*qp8+HftAn>5@#ukef-`qA%e`l-G>Np4-7rB>z2QDGp6Zcy8 zsXE$%J?T3u8saW!hmB9h_MxvSP|yZf$ij4{%|*{$vVoQ?d0I06owZ52cUu=MDqm3jlPm*-*^ zaaXi~bKGWFUhh2@GsCq5a|wx29HcBPoVPLnEHo9r!}G@jS*;#DNoTJ~NB z$h{X%PzoO32=jb9`{AovQC*TW;y&LcHua=ElO?u!Oj^^t6zfNBgGK^uO>3K%W5cMI@ow)Ms0)t5RnaNvHrsJL zeF#4qxRlNH>*nS7)2Qw2{&4SZ9PHVF8HstA5S@fE;j3MS?dW_433VXmvVKy;{eR|3 zfU}VnEV0dVU*FM-$$Vl+#0>jPQ?PBbp2B9m9h)j^P#;L(!$J>M=T3k+Agv2si+So8 z9JbD4ZE+`lqD;dob+%7N_)V3f>CypQDt6-5mMJ&*+_wx|)2015(6b$bnc0+I|It6e zQ)B)Cjc6|WpKo1{;i0i;7`PZcg$^|5&fuJW8h6z^%p-e=++e}OiI%pxf2E(o9aXC^ zBXO%ww{gE!DoI4lkOU|5X%{$Xdvb@Y5vd`r1m%&6`?Z@pDLQG^HNS=7AlAidanelV zf$T{<8J&pfS~WK0Phd}x`#l@rK}rC70}uBD2VY>*rF}SSe2y9MdHw4q0*noR&y_g# znhdKCJG=gd-agj1RKaIp6cq>A0RtNI~S1qM5E zgrZujV+`ys=6X@pzlF207Hdg#u1avXaL$M~5~&QJxnv<*N8xe|S5fHKGLWeF8Z0sAVZBMQyMOw!b@TQMvH+d3X+ zdab`JNJ5xi*?@+DcfzCvJl^ss@-&AV;y2^Q_zw{x5w}~9*@eAbFTe(3?eJ$1RbuY9 zEp3|^kTpRewmCfC8ecHIXPalKxb;d9UTW1E>V`?Iy$dU6Eo2t6+c-o=rMVb&GXXd0 z&)N z&JKv!8G(0k5JV*9X}!!B|4DlV9#7-BW0jW5`ZY*@5Remi8LX00V`(+ct$z9oPUYfN zl#cuwjlfch$SDQ%DF)J-UJO{;{-G7IWrATYXzyf?|6Et~^+gmTLU#C_xCao65rR@q zt|ls|_R`olLSVag&p`dP8&T(y3x$FWtg7l1ECu&`6;mSY+9S<*5s$HeGRxx;#^`O7Kw###m#dgf#MpZBi6P;~zpoG#VF@ zrj!MvlA0*S6{wQ35?D}>szsEV{?X#Dw9B$AyX(E&duQ(4J9B4_Ip@sGomuwe-prZv z{C&Ug_Zot6?SyvjUQ05cuTt|DkZH;Wjff=_lmdhRjsp;hfUq$TciLe~z+b7`C1Qm? z&Q}t!gZNT*7(0}0agX5>Vo03DZsBXFzn=1aLMH!0_dMc|Qj)~CddJ}(^m3wL3>-5h zYgyV%l7tmQ)KNg#jr`{dIbIWicNbGgvO07z>xnX6EEj{Xl(5i*D^vjV5PSWg00d>p zz_nbzo|oKrT}g zi^*(&DN$I5AY7=!1IL&a7~K-X`WUcY?W?5FL=pAnfn;*^}s4FE7E9b}%QFx9K_$pse_{~iqw1&mCT&tf%!#5vZEPxxpr01dnQBI>9LK}u z)1Z=$cj9+rfadUm{Wr{&RqT-;M+V7|Ii4*Z#T}`;5tHH}HqR7}B1)p@aDlx)_7^-j zX+6#qkK)%it;ayM4~C=WaRBpbdT)C zrfDyRqvCi|{IGJ$nqF#($dK_wzKU-g4U}k@rPR=!o`V;Si?E1+m*WfYXyph7G0a(P zk2Io7{%yz-x~^`+y2-zTDrZ8Meo;JujNE{Z%)Ok28Z~j<&f%Il05;dAcA!QrEXk~f zLoLWe;npx%{T?%7x8S_?Db5ypurR%Xv%jJFS)?P`K$Hv{Bsayw)m}QMIGxWtah>36 zOPC-fIyS2*+!=|(Ar8*lWB9Xq-uJt9c@p+U9toM_p5g6KiHe96^^%Yuxt69^b6;Yu z>KNR-7?{VKHsj#f>$o$$5_4kn$EPspb_rjXPUCa!INFknurzZYcNv*TNXjV}oJdJ5 zR5F+NU-Fts4p&anIi(h^$)Y2`_1nU?QnG==*%rQMo&E)MQskiL$_lz-tB^(97laAi zHM|WQnx26wr2`qO?r*G@uZ`m5^+Oz>ZWlSb=d@3-KwZMkm9-TOYmu`?aU{2&znAO+ zewt_x(K1l|4$sc`Qy^!G>8fnvYCJzm4pn>U%`RhXVyC9y-LeJnV4-7OLIQ}153MUq z6wcUVu@*d~-0lircmA&7?by(?1xYD=L$JD_o#i3>uGC5t?YyWc;Gidefcx0SrmfsJ z8ThQ+0Ew`IhhWIOgfoS|<2O_O;N~%rzd8q>#xpZ^iB!Y$nn)5kr3fQp9wmn=y__+g z6e-1SO~rnla$rO~8%*2U&H(C=v$32rCLX77t(T1!`=pNaJW!d}P5n%zn*AHSV zXG{QPs4Z$?P#vYIYW!CL#>9qUTSj*|29sF$(lpU;Gk`kgMl5thWhkVEhhvRsCh;4} ztSjav^yJ=!;phRzgeGUj=3&j`jVRS}*gL!f^Ac@Xo_zp~k!DXce5-wqV}(yq zlbk*)(R$k>WTrtrs(ezOY&0ZT(aWpt37RKJ_!%z3Cn!nBu@(dx4k*C_dm;%!>D~qD zfWne2=yC-GMW+!e_nKUsBbgITlKO##hmbY7GlIn;SGeslBryXKsgts%4@6Bi%tba Z`Vo!KQQ9ABhdlrQ002ovPDHLkV1j|0iqHT6 diff --git a/packages/toolkits/pro/template/tinyng/src/assets/img/set-up.png b/packages/toolkits/pro/template/tinyng/src/assets/img/set-up.png index e140762459ca7a9d48a455df2aead1e3d6fcff0b..3342add248b33de50fc8f6dadd58cef4c61e0b4f 100644 GIT binary patch literal 637 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 z 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 b?xy%Z-JiGFfJHe400000NkvXXu0mjf091AT literal 0 HcmV?d00001 diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-1.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-1.css new file mode 100644 index 00000000..006b54b9 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-1.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #212329; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #2a3b8f; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #2a3b8f; /* 深色背景下图标 */ + --ti-base-color-brand-4: #2a3b8f; /* 深色背景链接色 */ + --ti-base-color-brand-5: #2a3b8f; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #2a3b8f; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #2a3b8f; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-base-color-border-hover: #2a3b8f; + --ti-common-color-icon-normal: #2a3b8f; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-2.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-2.css new file mode 100644 index 00000000..ac3e3762 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-2.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #292332; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #673ab7; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #673ab7; /* 深色背景下图标 */ + --ti-base-color-brand-4: #673ab7; /* 深色背景链接色 */ + --ti-base-color-brand-5: #673ab7; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #673ab7; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #673ab7; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #673ab7; + --ti-base-color-border-hover: #673ab7; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-3.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-3.css new file mode 100644 index 00000000..b25718a8 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-3.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #242832; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #4f7dff; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #4f7dff; /* 深色背景下图标 */ + --ti-base-color-brand-4: #4f7dff; /* 深色背景链接色 */ + --ti-base-color-brand-5: #4f7dff; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #4f7dff; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #4f7dff; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #4f7dff; + --ti-base-color-border-hover: #4f7dff; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-4.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-4.css new file mode 100644 index 00000000..01de5716 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-4.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #242a26; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #4daf77; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #4daf77; /* 深色背景下图标 */ + --ti-base-color-brand-4: #4daf77; /* 深色背景链接色 */ + --ti-base-color-brand-5: #4daf77; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #4daf77; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #4daf77; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #4daf77; + --ti-base-color-border-hover: #4daf77; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-5.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-5.css new file mode 100644 index 00000000..b866e516 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-5.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #262c20; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #5faa15; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #5faa15; /* 深色背景下图标 */ + --ti-base-color-brand-4: #5faa15; /* 深色背景链接色 */ + --ti-base-color-brand-5: #5faa15; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #5faa15; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #5faa15; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #5faa15; + --ti-base-color-border-hover: #5faa15; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-6.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-6.css new file mode 100644 index 00000000..bfffd6a4 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-6.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #29231f; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #fe6a0b; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #fe6a0b; /* 深色背景下图标 */ + --ti-base-color-brand-4: #fe6a0b; /* 深色背景链接色 */ + --ti-base-color-brand-5: #fe6a0b; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #fe6a0b; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #fe6a0b; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #fe6a0b; + --ti-base-color-border-hover: #fe6a0b; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-7.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-7.css new file mode 100644 index 00000000..04251b8a --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme-7.css @@ -0,0 +1,70 @@ +/*主题 基础变量定义*/ +:root { + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ + + --ti-base-color-brand-1: #292324; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #f36b7f; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #f36b7f; /* 深色背景下图标 */ + --ti-base-color-brand-4: #f36b7f; /* 深色背景链接色 */ + --ti-base-color-brand-5: #f36b7f; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #f36b7f; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #f36b7f; /* 选块默认色/滑块背景色/分页悬浮色 */ + + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ + + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-common-color-icon-normal: #f36b7f; + --ti-base-color-border-hover: #f36b7f; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme.css index cf9cfd8f..c8b39ab1 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme.css +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-dark-theme.css @@ -1,35 +1,70 @@ /*主题 基础变量定义*/ :root { - --ti-default-body-bg:#202124; - --ti-common-color-bg-white-normal: #202124; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-default-body-bg: #202124; /*背景色*/ + --ti-base-color-white: #fff; + --ti-base-color-common: #131415; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ + --ti-base-color-common-1: #a0a0a0; /* 次要信息/图标默认 */ + --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ + --ti-base-color-common-4: #3d3e44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-common-7: #fff; /* 菜单文本色 */ - --ti-base-color-common: #E8E8E8; /* 正文主色,重要信息、标题颜色、输入类文本颜色 */ - --ti-base-color-common-1: #A0A0A0; /* 次要信息/图标默认 */ - --ti-base-color-common-2: #909090; /* 弱化信息、说明文字 */ - --ti-base-color-common-4: #3D3E44; /* 分割线/禁用描边/tab字体/开关组件“关”禁用背景色 */ + --ti-base-color-brand-1: #282828; /* 主色悬浮色/文字按钮、链接悬浮色 */ + --ti-base-color-brand-2: #131415; /* 文字按钮颜色/链接颜色 */ + --ti-base-color-brand-3: #131415; /* 深色背景下图标 */ + --ti-base-color-brand-4: #131415; /* 深色背景链接色 */ + --ti-base-color-brand-5: #131415; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ + --ti-base-color-brand-6: #131415; /* 选块默认色/滑块背景色/分页悬浮色 */ + --ti-base-color-brand-7: #131415; /* 选块默认色/滑块背景色/分页悬浮色 */ - --ti-base-color-brand-1: #383838; /* 主色悬浮色/文字按钮、链接悬浮色 */ - --ti-base-color-brand-2: #5E7CE0; /* 文字按钮颜色/链接颜色 */ - --ti-base-color-brand-3: #383838; /* 深色背景下图标 */ - --ti-base-color-brand-4: #383838; /* 深色背景链接色 */ - --ti-base-color-brand-5: #383838; /* 选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色 */ - --ti-base-color-brand-6: #383838; /* 选块默认色/滑块背景色/分页悬浮色 */ - --ti-base-color-brand-7: #383838; /* 下拉、列表、悬浮背景/表头/下拉搜索背景 */ + --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ + --ti-base-color-bg-1: #3d3e44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ + --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ + --ti-base-color-bg-3: #c7c5c5; /* 主要按钮-背景色 */ + --ti-base-color-bg-4: #d3d3d3; /* 主要按钮-hover/Focus背景色 */ + --ti-base-color-bg-6: #383838; /* 次要按钮-背景色 */ + --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ + --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ + --ti-base-color-bg-9: #282b33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ + --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ - --ti-base-color-bg: #606061; /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色/multiselect输入框中背景 */ - --ti-base-color-bg-1:#3D3E44; /* 禁用背景/小表格中禁用背景/支付列表中禁用背景 */ - --ti-base-color-bg-2: #606061; /* 新区域组件-悬浮背景色 */ - --ti-base-color-bg-3: #C7000B; /* 主要按钮-背景色 */ - --ti-base-color-bg-4: #D64A52; /* 主要按钮-hover/Focus背景色 */ - --ti-base-color-bg-6:#383838; /* 次要按钮-背景色 */ - --ti-base-color-bg-7: #383838; /* 次要按钮-hover/Focus背景色 */ - --ti-base-color-bg-8: #383838; /* 次要按钮-active背景色 */ - --ti-base-color-bg-9: #282B33; /* 顶部导航背景色/顶部导航下拉悬浮背景色 */ - --ti-base-color-bg-10: #181818; /* 顶部导航下拉背景色 */ + ----ti-tip-white-theme-bg: #383838; /* tip弹窗背景色 */ + --ti-base-color-success-bg: #304642; /* 成功-背景色 */ + --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ + --ti-base-color-error-bg: #4b3a39; /* 错误-背景色/校验背景色*/ + --ti-base-color-prompt-bg: #383d4f; /* 提示-背景色*/ - ----ti-tip-white-theme-bg:#383838; /* tip弹窗背景色 */ - --ti-base-color-success-bg: #304642; /* 成功-背景色 */ - --ti-base-color-warn-bg: #554434; /* 告警-背景色*/ - --ti-base-color-error-bg: #4B3A39; /* 错误-背景色/校验背景色*/ - --ti-base-color-prompt-bg: '#383D4F'; /* 提示-背景色*/ + --ti-common-color-bg-white-normal: #2e2f31; /* 组件设置的背景颜色之前为白色现在都修改为深色 */ + --ti-common-color-text-highlight: var( + --ti-base-color-common + ); /* 组件文本色 */ + --ti-common-color-text-secondary: #fff; /*组件弱文本*/ + --ti-dark-server-backup-color-bg: var( + --ti-base-color-bg-9 + ); /*暗色模式组件背景色*/ + --ti-common-color-text-highlight: var(--ti-base-color-common-7); + --ti-common-color-text-primary: #8a8e99; + --ti-base-color-common-5: #fff; /*公告字体颜色*/ + --ti-base-color-border-hover: #fff; + --ti-common-color-icon-normal: #8a8e99; + --ti-base-search-color: #353537; + --ti-base-search-icon-color: #fff; /*搜索图标颜色*/ + --ti-base-menu-text: #fff; /*菜单字体颜色*/ + --ti-common-color-header-bg-color: #3e3e3f; + --ti-common-title-color-top: #fff; + --ti-common-select-color: #fff; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5b96ff; /*链接字体颜色*/ + --ti-common-content-text-color: #fff; /*内容主题字体颜色*/ + --ti-base-table-border-color: #202124; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #343a40; /*表格内容边框线*/ + --ti-base-model-bg-color: #3e3e3f; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #fff; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #fff; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #131415; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #212121; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #fff; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #fff; /*公告标题颜色*/ + --ti-base-notice-content-color: #fff; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #3e3e3f; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #fff; /*默认按钮边框颜色*/ + --ti-base-navbar-line-color: rgba(255, 255, 255, 0.3); /*头部竖线颜色*/ } diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-deep-theme.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-deep-theme.css index ec8f69c0..737bf072 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-deep-theme.css +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-deep-theme.css @@ -1,14 +1,41 @@ - /*主题 基础变量定义*/ - :root { - --ti-base-color-brand: #252b3a; /*主色蓝/下拉菜单、选块选中色*/ - --ti-base-color-brand-1: #252b3a; /*主色悬浮色/文字按钮、链接悬浮色*/ - --ti-base-color-brand-2: #252b3a; /*文字按钮颜色/链接颜色*/ - --ti-base-color-brand-3: #252b3a; /*深色背景下图标*/ - --ti-base-color-brand-4: #252b3a; /*深色背景链接色*/ - --ti-base-color-brand-5: #252b3a; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ - --ti-base-color-bg-3: #252b3a; /*主要按钮-背景色*/ - --ti-base-color-bg-4: #252b3a; /*主要按钮-hover/Focus背景色*/ - --ti-base-color-bg-5: #252b3a; /*主要按钮-active背景色*/ - --ti-button-group-text-color-hover: #fff; - } - \ No newline at end of file +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #252b3a; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #e9ebf1; /*主色悬浮色/文字按钮、链接悬浮色*/ + --ti-base-color-brand-2: #e9ebf1; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #252b3a; /*深色背景下图标*/ + --ti-base-color-brand-4: #252b3a; /*深色背景链接色*/ + --ti-base-color-brand-5: #252b3a; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #252b3a; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #252b3a; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #252b3a; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #252b3a; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #252b3a; /*主要按钮-active背景色*/ + --ti-button-group-text-color-hover: #fff; + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #252b3a; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #252b3a; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #252b3a; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #252b3a; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #252b3a; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-hws-theme.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-hws-theme.css index 1a243ab6..d35b952a 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-hws-theme.css +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-hws-theme.css @@ -1,539 +1,41 @@ -/*注意:css var变量,以最后一次出现的生效。*/ -/*基础变量定义*/ +/*主题 基础变量定义*/ :root { - /* 一.颜色*/ - /* 1.基础色:此处的颜色变量为所有组件应用到的颜色,此处颜色仅在公共色中使用,具体组件不可使用*/ - --ti-base-color-white: #FFFFFF; - /* 纯白*/ - /* 1.1品牌色*/ - /* 品牌主色*/ - --ti-base-color-brand-6: #5E7CE0; - /* 主色蓝*/ - /* 主色衍生色*/ - --ti-base-color-brand-8: #344899; - /* 品牌色-8*/ - --ti-base-color-brand-7: #526ECC; - /* 品牌色-7*/ - --ti-base-color-brand-5: #7693F5; - /* 品牌色-5*/ - --ti-base-color-brand-4: #96ADFA; - /* 品牌色-4*/ - --ti-base-color-brand-3: #BECCFA; - /* 品牌色-3*/ - --ti-base-color-brand-2: #E9EDFA; - /* 品牌色-2*/ - --ti-base-color-brand-1: #F2F5FC; - /* 品牌色-1*/ - /* 1.2中立色*/ - /* 公用灰色系,用于文本、图标、线条、背景色*/ - --ti-base-color-common-9: #181818; - /* 中立色-9*/ - --ti-base-color-common-8: #282B33; - /* 中立色-8*/ - --ti-base-color-common-7: #252B3A; - /* 中立色-7*/ - --ti-base-color-common-6: #464C59; - /* 中立色-6*/ - --ti-base-color-common-5: #575D6C; - /* 中立色-5*/ - --ti-base-color-common-4: #5C6173; - /* 中立色-4*/ - --ti-base-color-common-3: #8A8E99; - /* 中立色-3*/ - --ti-base-color-common-2: #ADB0B8; - /* 中立色-2*/ - --ti-base-color-common-1: #DFE1E6; - /* 中立色-1*/ - /* 1.3背景色*/ - --ti-base-color-bg-9: #B12220; - /* 背景-9*/ - --ti-base-color-bg-8: #C7000B; - /* 背景-8*/ - --ti-base-color-bg-7: #D64A52; - /* 背景-7*/ - --ti-base-color-bg-6: #EEF0F5; - /* 背景-6*/ - --ti-base-color-bg-5: #F5F5F6; - /* 背景-5*/ - --ti-base-color-bg-4: #FAFAFA; - /* 背景-4*/ - --ti-base-color-bg-3: #FFFFFF; - /* 背景-3*/ - --ti-base-color-bg-2: #FFFFFF; - /* 背景-2*/ - --ti-base-color-bg-1: #FFFFFF; - /* 背景-1*/ - /* 1.4功能色*/ - --ti-base-color-error-4: #DE504E; - /* 错误-4*/ - --ti-base-color-error-3: #F66F6A; - /* 错误-3*/ - --ti-base-color-error-2: #FFBCBA; - /* 错误-2*/ - --ti-base-color-error-1: #FFEEED; - /* 错误-1*/ - --ti-base-color-success-4: #3AC295; - /* 成功-4*/ - --ti-base-color-success-3: #50D4AB; - /* 成功-3*/ - --ti-base-color-success-2: #ACF2DC; - /* 成功-2*/ - --ti-base-color-success-1: #EDFFF9; - /* 成功-1*/ - --ti-base-color-warn-5: #E37D29; - /* 告警-5*/ - --ti-base-color-warn-4: #FA9841; - /* 告警-4*/ - --ti-base-color-warn-3: #FAC20A; - /* 告警-3*/ - --ti-base-color-warn-2: #FFD0A6; - /* 告警-2*/ - --ti-base-color-warn-1: #FFF3E8; - /* 告警-1*/ - --ti-base-color-prompt-4: var(--ti-base-color-brand-7); - /* 提示-4*/ - --ti-base-color-prompt-3: var(--ti-base-color-brand-6); - /* 提示-3*/ - --ti-base-color-prompt-2: var(--ti-base-color-brand-3); - /* 提示-2*/ - --ti-base-color-prompt-1: #EBF6FF; - /* 提示-1*/ - --ti-base-color-prompt-icon-from: #7769E8; - /* 渐变图标-提示-起始色*/ - --ti-base-color-prompt-icon-to: #58BBFF; - /* 渐变图标-提示-终止色*/ - /* 状态图标色*/ - --ti-base-color-icon-info: #6CBFFF; - /* 状态图标-常规*/ - /* 图表色*/ - --ti-base-color-data-3: #A6DD82; - /* 图表数据色-3*/ - --ti-base-color-data-4: #F3689A; - /* 图表数据色-4*/ - --ti-base-color-data-5: #A97AF8; - /* 图表数据色-5*/ - /* 透明色*/ - --ti-base-color-transparent: transparent; - /* 2.公共色:此处颜色为组件场景色,根据使用场景分为以下几大类,具体组件引用以下颜色,如在使用过程中有问题,请自行按类别添加*/ - /* 2.1提示类型颜色,用于alert组件、涉及功能提示的背景、文字、图标等的颜色使用*/ - --ti-common-color-success: var(--ti-base-color-success-3); - /* 成功-图标色/状态图标-成功*/ - --ti-common-color-text-success: var(--ti-base-color-success-4); - /* 成功-文字色*/ - --ti-common-color-success-bg: var(--ti-base-color-success-1); - /* 成功-背景色*/ - --ti-common-color-success-border: var(--ti-base-color-success-2); - /* 成功-边框色*/ - --ti-common-color-error: var(--ti-base-color-error-3); - /* 错误-图标色/状态图标-危险、错误、失败/深色Tip中的价格文本*/ - --ti-common-color-error-text: var(--ti-base-color-error-4); - /* 错误-文字色*/ - --ti-common-color-error-bg: var(--ti-base-color-error-1); - /* 错误-背景色/校验背景色*/ - --ti-common-color-error-border: var(--ti-base-color-error-3); - /* 错误-校验边框色*/ - --ti-common-color-error-border-secondary: var(--ti-base-color-error-2); - /* 错误-alert边框色*/ - --ti-common-color-warn: var(--ti-base-color-warn-4); - /* 告警-图标色/状态图标-警告*/ - --ti-common-color-warn-text: var(--ti-base-color-warn-5); - /* 告警-文字色*/ - --ti-common-color-warn-bg: var(--ti-base-color-warn-1); - /* 告警-背景色*/ - --ti-common-color-warn-border: var(--ti-base-color-warn-2); - /* 告警-边框色*/ - --ti-common-color-warn-secondary: var(--ti-base-color-warn-3); - /* 次要告警-图标色/状态图标-异常*/ - --ti-common-color-prompt: var(--ti-base-color-prompt-3); - /* 提示-图标色*/ - --ti-common-color-prompt-text: var(--ti-base-color-prompt-4); - /* 提示-图标色*/ - --ti-common-color-prompt-bg: var(--ti-base-color-prompt-1); - /* 提示-背景色*/ - --ti-common-color-prompt-border: var(--ti-base-color-prompt-2); - /* 提示-边框色*/ - --ti-common-color-prompt-icon-from: var(--ti-base-color-prompt-icon-from); - /* 渐变图标-提示-起始色*/ - --ti-common-color-prompt-icon-to: var(--ti-base-color-prompt-icon-to); - /* 渐变图标-提示-终止色*/ - /* 2.2文本色*/ - --ti-common-color-text-primary: var(--ti-base-color-common-7); - /* 一级文本色-重要信息/标题颜色/输入类文本颜色*/ - --ti-common-color-text-secondary: var(--ti-base-color-common-5); - /* 二级文本色-次要信息*/ - --ti-common-color-text-weaken: var(--ti-base-color-common-3); - /* 三级文本色-弱化信息/说明文字*/ - --ti-common-color-text-disabled: var(--ti-base-color-common-2); - /* 文本禁用信息*/ - --ti-common-color-text-darkbg: var(--ti-base-color-common-2); - /* 深色背景下文本信息*/ - --ti-common-color-text-darkbg-disabled: var(--ti-base-color-common-5); - /* 深色背景下文本信息禁用色*/ - --ti-common-color-text-link: var(--ti-base-color-brand-7); - /* 链接色*/ - --ti-common-color-text-link-hover: var(--ti-base-color-brand-8); - /* 链接悬浮色*/ - --ti-common-color-text-link-darkbg: var(--ti-base-color-brand-4); - /* 深色背景链接色*/ - --ti-common-color-text-link-darkbg-hover: var(--ti-base-color-brand-3); - /* 深色背景链接悬浮色*/ - --ti-common-color-text-highlight: var(--ti-base-color-brand-7); - /* 文本高亮色*/ - --ti-common-color-text-white: var(--ti-base-color-white); - /* 深色背景或图标上文字色*/ - --ti-common-color-text-gray: var(--ti-base-color-white); - /* 深色背景下的文本色,用于tip*/ - --ti-common-color-text-gray-disabled: var(--ti-base-color-common-4); - /* 深色背景下的灰色文本禁用色,用于tab页签中*/ - --ti-common-color-text-important: var(--ti-base-color-error-4); - /* 文本_金额*/ - /* 2.3图标色*/ - /* 浅底背景图标色*/ - --ti-common-color-icon-normal: var(--ti-base-color-common-5); - --ti-common-color-icon-hover: var(--ti-base-color-brand-6); - --ti-common-color-icon-active: var(--ti-base-color-brand-6); - --ti-common-color-icon-disabled: var(--ti-base-color-common-2); - /* 图标禁用色/状态图标-禁用、停止*/ - --ti-common-color-icon-white: var(--ti-base-color-white); - /* 灰色背景下图标色*/ - --ti-common-color-icon-graybg-normal: var(--ti-base-color-common-2); - --ti-common-color-icon-graybg-hover: var(--ti-base-color-brand-6); - --ti-common-color-icon-graybg-active: var(--ti-base-color-brand-6); - --ti-common-color-icon-graybg-disabled: var(--ti-base-color-common-1); - /* 深底背景图标色*/ - --ti-common-color-icon-darkbg-normal: var(--ti-base-color-common-2); - --ti-common-color-icon-darkbg-hover: var(--ti-base-color-brand-5); - --ti-common-color-icon-darkbg-active: var(--ti-base-color-brand-5); - --ti-common-color-icon-darkbg-disabled: var(--ti-base-color-common-5); - /* 状态图标背景色*/ - --ti-common-color-icon-info: var(--ti-base-color-icon-info); - /* 状态图标-常规、信息提示*/ - /* 2.4线颜色,用于边框,线条等的颜色使用*/ - --ti-common-color-line-normal: var(--ti-base-color-common-2); - --ti-common-color-line-hover: var(--ti-base-color-common-5); - --ti-common-color-line-active: var(--ti-base-color-brand-6); - --ti-common-color-line-disabled: var(--ti-base-color-common-1); - /* 分割线颜色*/ - --ti-common-color-line-dividing: var(--ti-base-color-common-1); - /* 虚线*/ - --ti-common-color-dash-line-normal: var(--ti-base-color-common-5); - --ti-common-color-dash-line-hover: var(--ti-base-color-brand-7); - /* 2.5背景色*/ - /* 背景基础色各状态色*/ - --ti-common-color-bg-normal: var(--ti-base-color-bg-6); - /* 通用背景-页面背景色/下拉搜索框背景色/标签背景色*/ - --ti-common-color-bg-emphasize: var(--ti-base-color-brand-6); - /* 背景高亮色*/ - --ti-common-color-bg-disabled: var(--ti-base-color-bg-5); - /* 禁用背景色*/ - --ti-common-color-bg-hover: var(--ti-base-color-brand-8); - /* 主色背景悬浮色*/ - --ti-common-color-bg-gray: var(--ti-base-color-bg-4); - /* 新区域组件-悬浮背景色*/ - --ti-common-color-bg-secondary: var(--ti-base-color-common-2); - /* 开关组件-关闭状态-背景色*/ - /* 重要背景色,主要用于重要按钮场景*/ - --ti-common-bg-primary: var(--ti-base-color-bg-8); - /* 重要按钮背景色*/ - --ti-common-bg-primary-hover: var(--ti-base-color-bg-7); - /* 重要按钮背景悬浮、focus色*/ - --ti-common-bg-primary-active: var(--ti-base-color-bg-9); - /* 重要按钮背景色按下色*/ - /* 次要背景色,主要用于次要按钮场景*/ - --ti-common-bg-minor: var(--ti-base-color-bg-2); - /* 次要按钮背景色*/ - --ti-common-bg-minor-hover: var(--ti-base-color-bg-1); - /* 次要按钮背景悬浮、focus色*/ - --ti-common-bg-minor-active: var(--ti-base-color-bg-3); - /* 次要按钮背景色按下色*/ - /* 白底背景状态色*/ - --ti-common-color-bg-white-normal: var(--ti-base-color-white); - /* 白色背景,用于输入框背景*/ - --ti-common-color-bg-white-emphasize: var(--ti-base-color-brand-1); - /* 白色hover或强调色,如表头背景、表格悬浮、下拉选项悬浮背景*/ - /* 浅底背景状态色*/ - --ti-common-color-bg-light-normal: var(--ti-base-color-brand-2); - /* 滑块slider-背景色/多选快buttongroup-默认背景色/树组件选中背景色*/ - --ti-common-color-bg-light-emphasize: var(--ti-base-color-brand-3); - /* 浅背景hover或强调色,开关组件“开”禁用背景色*/ - /* 深色底背景状态色*/ - --ti-common-color-bg-dark-normal: var(--ti-base-color-common-6); - /* 一级tab页签背景色*/ - --ti-common-color-bg-dark-emphasize: var(--ti-base-color-common-4); - /* 一级tab页签背景-悬浮色*/ - --ti-common-color-bg-dark-active: var(--ti-common-color-bg-normal); - /* 一级tab页签背景-激活/focus状态背景色*/ - --ti-common-color-bg-dark-deep: var(--ti-base-color-common-6); - /* tip、alert提示背景色*/ - --ti-common-color-bg-dark-disabled: var(--ti-base-color-common-1); - /* 深色背景禁用色,开关组件“关”禁用背景色*/ - /* 顶部导航*/ - --ti-common-color-bg-navigation: var(--ti-base-color-common-8); - /* 顶部导航背景色/顶部导航下拉悬浮背景色*/ - --ti-common-color-bg-dark-select: var(--ti-base-color-common-9); - /* 顶部导航下拉背景色 */ - /* 2.6 图表色*/ - --ti-common-color-data-1: var(--ti-base-color-success-3); - /* 图表数据色-1*/ - --ti-common-color-data-2: var(--ti-base-color-icon-info); - /* 图表数据色-2*/ - --ti-common-color-data-3: var(--ti-base-color-data-3); - /* 图表数据色-3*/ - --ti-common-color-data-4: var(--ti-base-color-data-4); - /* 图表数据色-4*/ - --ti-common-color-data-5: var(--ti-base-color-data-5); - /* 图表数据色-5*/ - --ti-common-color-data-6: var(--ti-base-color-warn-3); - /* 图表数据色-6*/ - --ti-common-color-data-7: var(--ti-base-color-warn-4); - /* 图表数据色-7*/ - --ti-common-color-data-8: var(--ti-base-color-error-3); - /* 图表数据色-8*/ - /* 2.7 透明色*/ - --ti-common-color-transparent: var(--ti-base-color-transparent); - /* 二.其他变量*/ - /* 边框圆角*/ - --ti-common-border-radius-normal: 2px; - /* 常规*/ - --ti-common-border-radius-0: 0px; - /* 直角*/ - --ti-common-border-radius-1: 4px; - /* 圆角-1*/ - --ti-common-border-radius-2: 8px; - /* 圆角-2*/ - --ti-common-border-radius-3: 50%; - /* 圆形*/ - /* 字号*/ - --ti-common-font-size-base: 12px; - /* 正文-常规*/ - --ti-common-font-size-1: 14px; - /* 标题-小*/ - --ti-common-font-size-2: 16px; - /* 标题-中*/ - --ti-common-font-size-3: 18px; - /* 标题-大*/ - --ti-common-font-size-4: 20px; - /* 字号-4*/ - --ti-common-font-size-5: 24px; - /* 字号-5*/ - --ti-common-font-size-6: 32px; - /* 字号-6*/ - --ti-common-font-size-7: 36px; - /* 字号-7*/ - /* 行高*/ - --ti-common-line-height-number: 1.5; - /* 文字行高倍数,建议组件中设置行高使用该变量,如有特殊情况,请自行定义*/ - /* 间距:适用于组件中的margin、padding*/ - --ti-common-space-base: 4px; - /* 基础间距*/ - --ti-common-space-2x: calc(var(--ti-common-space-base) * 2); - /* 间距-2*/ - --ti-common-space-3x: calc(var(--ti-common-space-base) * 3); - /* 间距-3*/ - --ti-common-space-4x: calc(var(--ti-common-space-base) * 4); - /* 间距-4*/ - --ti-common-space-5x: calc(var(--ti-common-space-base) * 5); - /* 间距-5*/ - --ti-common-space-6x: calc(var(--ti-common-space-base) * 6); - /* 间距-6*/ - --ti-common-space-7x: calc(var(--ti-common-space-base) * 7); - /* 间距-7*/ - --ti-common-space-8x: calc(var(--ti-common-space-base) * 8); - /* 间距-8*/ - --ti-common-space-9x: calc(var(--ti-common-space-base) * 9); - /* 间距-9*/ - --ti-common-space-10x: calc(var(--ti-common-space-base) * 10); - /* 间距-10*/ - /* 其他间距*/ - --ti-common-space-0: 0px; - /* 其他间距-1*/ - --ti-common-space-1: 1px; - /* 其他间距-2*/ - --ti-common-space-6: 6px; - /* 其他间距-3*/ - --ti-common-space-10: 10px; - /* 其他间距-4*/ - /* 阴影*/ - --ti-common-shadow-1-up: 0 -1px 4px 0 rgba(0, 0, 0, 0.1); - /* 阴影-1 上*/ - --ti-common-shadow-1-down: 0 1px 4px 0 rgba(0, 0, 0, 0.1); - /* 阴影-1 下*/ - --ti-common-shadow-1-left: -1px 0px 4px 0 rgba(0, 0, 0, 0.1); - /* 阴影-1 左*/ - --ti-common-shadow-1-right: 1px 0px 4px 0 rgba(0, 0, 0, 0.1); - /* 阴影-1 右*/ - --ti-common-shadow-2-up: 0 -2px 8px 0 rgba(0, 0, 0, 0.2); - /* 阴影-2 上*/ - --ti-common-shadow-2-down: 0 2px 8px 0 rgba(0, 0, 0, 0.2); - /* 阴影-2 下*/ - --ti-common-shadow-2-left: -2px 0 8px 0 rgba(238, 10, 10, 0.2); - /* 阴影-2 左*/ - --ti-common-shadow-2-right: 2px 0 8px 0 rgba(252, 5, 5, 0.2); - /* 阴影-2 右*/ - --ti-common-shadow-3-up: 0 -4px 16px 0 rgba(0, 0, 0, 0.2); - /* 阴影-3 上*/ - --ti-common-shadow-3-down: 0 4px 16px 0 rgba(0, 0, 0, 0.2); - /* 阴影-3 下*/ - --ti-common-shadow-3-left: -4px 0 16px 0 rgba(0, 0, 0, 0.2); - /* 阴影-3 左*/ - --ti-common-shadow-3-right: 4px 0 16px 0 rgba(0, 0, 0, 0.2); - /* 阴影-3 右*/ - --ti-common-shadow-4-up: 0 -8px 40px 0 rgba(0, 0, 0, 0.2); - /* 阴影-4 上*/ - --ti-common-shadow-4-down: 0 8px 40px 0 rgba(0, 0, 0, 0.2); - /* 阴影-4 下*/ - --ti-common-shadow-4-left: -8px 0 40px 0 rgba(0, 0, 0, 0.2); - /* 阴影-4 左*/ - --ti-common-shadow-4-right: 8px 0 40px 0 rgba(0, 0, 0, 0.2); - /* 阴影-4 右*/ - /* 提示类阴影*/ - --ti-common-shadow-error: 0 1px 3px 0 rgba(199, 54, 54, 0.25); - /* 错误*/ - --ti-common-shadow-warn: 0 1px 3px 0 rgba(204, 100, 20, 0.25); - /* 告警*/ - --ti-common-shadow-prompt: 0 1px 3px 0 rgba(70, 94, 184, 0.25); - /* 提示*/ - --ti-common-shadow-success: 0 1px 3px 0 rgba(39, 176, 128, 0.25); - /* 成功*/ - /* 字体*/ - --ti-common-font-family: "Helvetica", "Arial", "PingFangSC-Regular", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", "Microsoft JhengHei"; - /* 字重*/ - --ti-common-font-weight-1: 100; - /* 极细*/ - --ti-common-font-weight-2: 200; - /* 纤细*/ - --ti-common-font-weight-3: 300; - /* 细体*/ - --ti-common-font-weight-4: normal; - /* 常规*/ - --ti-common-font-weight-5: 500; - /* 中等*/ - --ti-common-font-weight-6: 600; - /* 半粗*/ - --ti-common-font-weight-7: bold; - /* 粗体*/ - --ti-common-font-weight-8: 800; - /* 中黑*/ - --ti-common-font-weight-9: 900; - /* 黑体*/ - /* 边框粗细*/ - --ti-common-border-weight-normal: 1px; - /* 常规*/ - --ti-common-border-weight-1: 2px; - /* 较粗*/ - --ti-common-border-weight-2: 3px; - /* 粗*/ - /* 边框样式*/ - --ti-common-border-style-dashed: dashed; - /* 虚线*/ - --ti-common-border-style-dotted: dotted; - /* 点线*/ - --ti-common-border-style-solid: solid; - /* 实线*/ - /* 尺寸*/ - --ti-common-size-base: 4px; - /* 基础尺寸*/ - --ti-common-size-2x: calc(var(--ti-common-size-base) * 2); - /* 尺寸-2*/ - --ti-common-size-3x: calc(var(--ti-common-size-base) * 3); - /* 尺寸-3*/ - --ti-common-size-4x: calc(var(--ti-common-size-base) * 4); - /* 尺寸-4*/ - --ti-common-size-5x: calc(var(--ti-common-size-base) * 5); - /* 尺寸-5*/ - --ti-common-size-6x: calc(var(--ti-common-size-base) * 6); - /* 尺寸-6*/ - --ti-common-size-7x: calc(var(--ti-common-size-base) * 7); - /* 尺寸-7*/ - --ti-common-size-8x: calc(var(--ti-common-size-base) * 8); - /* 尺寸-8*/ - --ti-common-size-9x: calc(var(--ti-common-size-base) * 9); - /* 尺寸-9*/ - --ti-common-size-10x: calc(var(--ti-common-size-base) * 10); - /* 尺寸-10*/ - --ti-common-size-11x: calc(var(--ti-common-size-base) * 11); - /* 尺寸-11*/ - --ti-common-size-12x: calc(var(--ti-common-size-base) * 12); - /* 尺寸-12*/ - --ti-common-size-13x: calc(var(--ti-common-size-base) * 13); - /* 尺寸-13*/ - --ti-common-size-14x: calc(var(--ti-common-size-base) * 14); - /* 尺寸-14*/ - --ti-common-size-15x: calc(var(--ti-common-size-base) * 15); - /* 尺寸-15*/ - --ti-common-size-16x: calc(var(--ti-common-size-base) * 16); - /* 尺寸-16*/ - --ti-common-size-17x: calc(var(--ti-common-size-base) * 17); - /* 尺寸-17*/ - --ti-common-size-18x: calc(var(--ti-common-size-base) * 18); - /* 尺寸-18*/ - --ti-common-size-19x: calc(var(--ti-common-size-base) * 19); - /* 尺寸-19*/ - --ti-common-size-20x: calc(var(--ti-common-size-base) * 20); - /* 尺寸-20*/ - --ti-common-size-21x: calc(var(--ti-common-size-base) * 21); - /* 尺寸-21*/ - --ti-common-size-22x: calc(var(--ti-common-size-base) * 22); - /* 尺寸-22*/ - --ti-common-size-23x: calc(var(--ti-common-size-base) * 23); - /* 尺寸-23*/ - --ti-common-size-24x: calc(var(--ti-common-size-base) * 24); - /* 尺寸-24*/ - --ti-common-size-25x: calc(var(--ti-common-size-base) * 25); - /* 尺寸-25*/ - --ti-common-size-26x: calc(var(--ti-common-size-base) * 26); - /* 尺寸-26*/ - --ti-common-size-27x: calc(var(--ti-common-size-base) * 27); - /* 尺寸-27*/ - --ti-common-size-28x: calc(var(--ti-common-size-base) * 28); - /* 尺寸-28*/ - --ti-common-size-29x: calc(var(--ti-common-size-base) * 29); - /* 尺寸-29*/ - --ti-common-size-30x: calc(var(--ti-common-size-base) * 30); - /* 尺寸-30*/ - --ti-common-size-31x: calc(var(--ti-common-size-base) * 31); - /* 尺寸-31*/ - --ti-common-size-32x: calc(var(--ti-common-size-base) * 32); - /* 尺寸-32*/ - --ti-common-size-33x: calc(var(--ti-common-size-base) * 33); - /* 尺寸-33*/ - --ti-common-size-34x: calc(var(--ti-common-size-base) * 34); - /* 尺寸-34*/ - --ti-common-size-35x: calc(var(--ti-common-size-base) * 35); - /* 尺寸-35*/ - --ti-common-size-36x: calc(var(--ti-common-size-base) * 36); - /* 尺寸-36*/ - --ti-common-size-37x: calc(var(--ti-common-size-base) * 37); - /* 尺寸-37*/ - --ti-common-size-38x: calc(var(--ti-common-size-base) * 38); - /* 尺寸-38*/ - --ti-common-size-39x: calc(var(--ti-common-size-base) * 39); - /* 尺寸-39*/ - --ti-common-size-40x: calc(var(--ti-common-size-base) * 40); - /* 尺寸-40*/ - --ti-common-size-41x: calc(var(--ti-common-size-base) * 41); - /* 尺寸-41*/ - --ti-common-size-42x: calc(var(--ti-common-size-base) * 42); - /* 尺寸-42*/ - --ti-common-size-43x: calc(var(--ti-common-size-base) * 43); - /* 尺寸-43*/ - --ti-common-size-44x: calc(var(--ti-common-size-base) * 44); - /* 尺寸-44*/ - --ti-common-size-45x: calc(var(--ti-common-size-base) * 45); - /* 尺寸-45*/ - --ti-common-size-46x: calc(var(--ti-common-size-base) * 46); - /* 尺寸-46*/ - --ti-common-size-47x: calc(var(--ti-common-size-base) * 47); - /* 尺寸-47*/ - --ti-common-size-48x: calc(var(--ti-common-size-base) * 48); - /* 尺寸-48*/ - --ti-common-size-49x: calc(var(--ti-common-size-base) * 49); - /* 尺寸-49*/ - --ti-common-size-50x: calc(var(--ti-common-size-base) * 50); - /* 尺寸-50*/ - /* 其他尺寸*/ - --ti-common-size-0: 0px; - /* 其他尺寸-1*/ - --ti-common-size-auto: auto; - /* 其他尺寸-2*/ + --ti-base-color-white: #fff; + --ti-base-color-brand: #526ecc; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f2f5fc; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #e9edfa; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #5e7ce0; /*深色背景下图标*/ + --ti-base-color-brand-4: #96adfa; /*深色背景链接色*/ + --ti-base-color-brand-5: #7693f5; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #5e7ce0; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #526ecc; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #526ecc; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #526ecc; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #526ecc; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #526ecc; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #526ecc; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-common-color-header-bg-color: #fff; + --ti-base-link-a-color: #526ecc; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #526ecc; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #526ecc; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; } diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-1.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-1.css new file mode 100644 index 00000000..2f6b5d76 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-1.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #343a40; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #edf2f6; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #edf2f6; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #343a40; /*深色背景下图标*/ + --ti-base-color-brand-4: #343a40; /*深色背景链接色*/ + --ti-base-color-brand-5: #343a40; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #343a40; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #343a40; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #343a40; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #343a40; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #343a40; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #343a40; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #343a40; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #343a40; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #343a40; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #343a40; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-2.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-2.css new file mode 100644 index 00000000..4a92a791 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-2.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #25316c; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #e5e8f5; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #e5e8f5; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #25316c; /*深色背景下图标*/ + --ti-base-color-brand-4: #25316c; /*深色背景链接色*/ + --ti-base-color-brand-5: #25316c; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #25316c; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #25316c; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #25316c; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #25316c; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #25316c; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #25316c; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #25316c; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #25316c; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #25316c; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #25316c; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-3.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-3.css new file mode 100644 index 00000000..28f93234 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-3.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #673ab7; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f7f4fc; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #f7f4fc; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #673ab7; /*深色背景下图标*/ + --ti-base-color-brand-4: #673ab7; /*深色背景链接色*/ + --ti-base-color-brand-5: #673ab7; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #673ab7; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #673ab7; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #673ab7; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #673ab7; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #673ab7; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #673ab7; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #673ab7; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #673ab7; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #673ab7; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #673ab7; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-4.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-4.css new file mode 100644 index 00000000..0ff57906 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-4.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #4f7dff; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f0f4ff; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #f0f4ff; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #4f7dff; /*深色背景下图标*/ + --ti-base-color-brand-4: #4f7dff; /*深色背景链接色*/ + --ti-base-color-brand-5: #4f7dff; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #4f7dff; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #4f7dff; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #4f7dff; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #4f7dff; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #4f7dff; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #4f7dff; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #4f7dff; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #4f7dff; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #4f7dff; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #4f7dff; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-5.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-5.css new file mode 100644 index 00000000..9a989a41 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-5.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #4daf77; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f4fcf7; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #f4fcf7; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #4daf77; /*深色背景下图标*/ + --ti-base-color-brand-4: #4daf77; /*深色背景链接色*/ + --ti-base-color-brand-5: #4daf77; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #4daf77; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #4daf77; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #4daf77; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #4daf77; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #4daf77; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #4daf77; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #4daf77; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #4daf77; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #4daf77; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #4daf77; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-6.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-6.css new file mode 100644 index 00000000..de138082 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-6.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #5faa15; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f5faf0; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #f5faf0; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #5faa15; /*深色背景下图标*/ + --ti-base-color-brand-4: #5faa15; /*深色背景链接色*/ + --ti-base-color-brand-5: #5faa15; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #5faa15; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #5faa15; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #5faa15; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #5faa15; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #5faa15; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #5faa15; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #5faa15; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #5faa15; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #5faa15; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #5faa15; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-7.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-7.css new file mode 100644 index 00000000..97d8ffc9 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-7.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #ff6a0b; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #fff9f5; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #fff9f5; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #ff6a0b; /*深色背景下图标*/ + --ti-base-color-brand-4: #ff6a0b; /*深色背景链接色*/ + --ti-base-color-brand-5: #ff6a0b; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #ff6a0b; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #ff6a0b; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #ff6a0b; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #ff6a0b; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #ff6a0b; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #ff6a0b; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #ff6a0b; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #ff6a0b; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #ff6a0b; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #ff6a0b; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-8.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-8.css new file mode 100644 index 00000000..3064cf78 --- /dev/null +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-light-theme-8.css @@ -0,0 +1,40 @@ +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #f36b7f; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #fff7f8; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #fff7f8; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #f36b7f; /*深色背景下图标*/ + --ti-base-color-brand-4: #f36b7f; /*深色背景链接色*/ + --ti-base-color-brand-5: #f36b7f; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #f36b7f; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #f36b7f; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #f36b7f; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #f36b7f; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #f36b7f; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #f36b7f; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #f36b7f; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #f36b7f; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #f36b7f; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #f36b7f; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-provence-theme.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-provence-theme.css index b781dd89..304d5a20 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-provence-theme.css +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-provence-theme.css @@ -1,15 +1,40 @@ - /*主题 基础变量定义*/ - :root { - --ti-base-color-white: #fff; - --ti-base-color-brand: #7B69EE; /*主色蓝/下拉菜单、选块选中色*/ - --ti-base-color-brand-1: #7B69EE; /*主色悬浮色/文字按钮、链接悬浮色*/ - --ti-base-color-brand-2: #7B69EE; /*文字按钮颜色/链接颜色*/ - --ti-base-color-brand-3: #7B69EE; /*深色背景下图标*/ - --ti-base-color-brand-4: #7B69EE; /*深色背景链接色*/ - --ti-base-color-brand-5: #7B69EE; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ - --ti-base-color-brand-6: #f9fafb; /*选块默认色/滑块背景色/分页悬浮色*/ - --ti-base-color-bg-3: #7B69EE; /*主要按钮-背景色*/ - --ti-base-color-bg-4: #7B69EE; /*主要按钮-hover/Focus背景色*/ - --ti-base-color-bg-5: #7B69EE; /*主要按钮-active背景色*/ - } - \ No newline at end of file +/*主题 基础变量定义*/ +:root { + --ti-base-color-white: #fff; + --ti-base-color-brand: #7b69ee; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f3f1fd; /*主色悬浮色/文字按钮、链接悬浮色*/ + --ti-base-color-brand-2: #f3f1fd; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #7b69ee; /*深色背景下图标*/ + --ti-base-color-brand-4: #7b69ee; /*深色背景链接色*/ + --ti-base-color-brand-5: #7b69ee; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #7b69ee; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #7b69ee; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #7b69ee; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #7b69ee; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #7b69ee; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #7b69ee; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #7b69ee; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #7b69ee; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #7b69ee; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #7b69ee; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-sweet-theme.css b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-sweet-theme.css index 2b8e2680..70b3e4b1 100644 --- a/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-sweet-theme.css +++ b/packages/toolkits/pro/template/tinyng/src/assets/styles/theme/tiny-sweet-theme.css @@ -1,15 +1,40 @@ /*主题 基础变量定义*/ :root { - --ti-base-color-white: #fff; - --ti-base-color-brand: #ec66ab; /*主色蓝/下拉菜单、选块选中色*/ - --ti-base-color-brand-1: #ec66ab; /*主色悬浮色/文字按钮、链接悬浮色*/ - --ti-base-color-brand-2: #ec66ab; /*文字按钮颜色/链接颜色*/ - --ti-base-color-brand-3: #ec66ab; /*深色背景下图标*/ - --ti-base-color-brand-4: #ec66ab; /*深色背景链接色*/ - --ti-base-color-brand-5: #ec66ab; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ - --ti-base-color-brand-6: #f9fafb; /*选块默认色/滑块背景色/分页悬浮色*/ - --ti-base-color-bg-3: #ec66ab; /*主要按钮-背景色*/ - --ti-base-color-bg-4: #ec66ab; /*主要按钮-hover/Focus背景色*/ - --ti-base-color-bg-5: #ec66ab; /*主要按钮-active背景色*/ - } - \ No newline at end of file + --ti-base-color-white: #fff; + --ti-base-color-brand: #ec66ab; /*主色蓝/下拉菜单、选块选中色*/ + --ti-base-color-brand-1: #f3dfe9; /*主色悬浮色/文字按钮、链接悬浮色 悬浮背景色*/ + --ti-base-color-brand-2: #f3dfe9; /*文字按钮颜色/链接颜色*/ + --ti-base-color-brand-3: #ec66ab; /*深色背景下图标*/ + --ti-base-color-brand-4: #ec66ab; /*深色背景链接色*/ + --ti-base-color-brand-5: #ec66ab; /*选块悬浮色/深色背景链接悬浮色/提示边框色/开关组件“开”禁用背景色*/ + --ti-base-color-brand-6: #ec66ab; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-brand-7: #ec66ab; /*选块默认色/滑块背景色/分页悬浮色*/ + --ti-base-color-bg-3: #ec66ab; /*主要按钮-背景色*/ + --ti-base-color-bg-4: #ec66ab; /*主要按钮-hover/Focus背景色*/ + --ti-base-color-bg-5: #ec66ab; /*主要按钮-active背景色*/ + --ti-default-body-bg: #f6f8f9; /*背景色*/ + --ti-base-color-common-5: #ec66ab; /*图标色*/ + --ti-common-color-bg-light-normal: var(--ti-base-color-brand-3); + --ti-base-color-border-hover: #ec66ab; + --ti-common-color-text-primary: #8a8e99; + --ti-base-search-color: #eff2f8; + --ti-base-search-icon-color: #adb0b8; /*位置下拉图标*/ + --ti-base-menu-text: #252b3a; /*菜单字体颜色*/ + --ti-common-title-color-top: #202e54; + --ti-common-select-color: #575d6c; /*下拉选择颜色字体*/ + --ti-base-link-a-color: #ec66ab; + --ti-base-table-border-color: #fff; /*表格头部边框线*/ + --ti-base-table-border-bottom-color: #dfe1e6; /*表格内容边框线*/ + --ti-base-model-bg-color: #fff; /*消息弹出框背景以及按钮颜色*/ + --ti-base-model-text-color: #8a8e99; /*消息弹出框字体颜色*/ + --ti-base-model-link-color: #526ecc; /*图标以及链接颜色*/ + --ti-base-content-bg-color: #f6f8f9; /*内容区域背景颜色*/ + --ti-base-card-bg-color: #fff; /*内容卡片 背景颜色*/ + --ti-base-table-text-color: #252b3a; /*表格内容字体颜色*/ + --ti-base-notice-tip-color: #ec66ab; /*公告标题颜色*/ + --ti-base-notice-content-color: #8a8e99; /*公告内容颜色*/ + --ti-base-collapse-bg-color: #fff; /*收缩图标背景颜色*/ + --ti-base-button-default-border-color: #ec66ab; + --ti-base-navbar-line-color: #dfe1e6; /*头部竖线颜色*/ + --ti-common-content-text-color: #252b3a; +} diff --git a/packages/toolkits/pro/template/tinyng/src/index.html b/packages/toolkits/pro/template/tinyng/src/index.html index 17754d54..cb76a109 100644 --- a/packages/toolkits/pro/template/tinyng/src/index.html +++ b/packages/toolkits/pro/template/tinyng/src/index.html @@ -4,8 +4,9 @@ TinyPro of Ng | 面向华为云控制台业务解决方案 + - + diff --git a/packages/toolkits/pro/template/tinyng/src/polyfills.ts b/packages/toolkits/pro/template/tinyng/src/polyfills.ts index 7338712a..d471b9b5 100644 --- a/packages/toolkits/pro/template/tinyng/src/polyfills.ts +++ b/packages/toolkits/pro/template/tinyng/src/polyfills.ts @@ -18,6 +18,22 @@ * BROWSER POLYFILLS */ +/** IE9, IE10 and IE11 requires all of the following polyfills. **/ +import 'core-js/es/symbol'; +import 'core-js/es/object'; +import 'core-js/es/function'; +import 'core-js/es/parse-int'; +import 'core-js/es/parse-float'; +import 'core-js/es/number'; +import 'core-js/es/math'; +import 'core-js/es/string'; +import 'core-js/es/date'; +import 'core-js/es/array'; +import 'core-js/es/regexp'; +import 'core-js/es/map'; +import 'core-js/es/weak-map'; +import 'core-js/es/set'; + /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. @@ -55,7 +71,8 @@ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ -import 'zone.js'; // Included with Angular CLI. +import 'zone.js'; // Included with Angular CLI. + /*************************************************************************************************** * APPLICATION IMPORTS diff --git a/packages/toolkits/pro/template/tinyng/tsconfig.json b/packages/toolkits/pro/template/tinyng/tsconfig.json index a8d8c1ef..17a06922 100644 --- a/packages/toolkits/pro/template/tinyng/tsconfig.json +++ b/packages/toolkits/pro/template/tinyng/tsconfig.json @@ -4,23 +4,24 @@ "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", - "forceConsistentCasingInFileNames": true, - "strict": true, - "noImplicitReturns": false, - "noFallthroughCasesInSwitch": true, "sourceMap": true, - "declaration": true, + "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, - "resolveJsonModule": true, - "esModuleInterop": true, - "target": "es2017", + "target": "es2015", "module": "es2020", + "skipLibCheck": true, + "esModuleInterop": true, + "resolveJsonModule": true, + "isolatedModules": true, + "allowJs": true, "lib": [ "es2018", - "dom" + "dom", + "scripthost", + "es5", ], "paths": { "@shared/tiny-pro": [ @@ -31,6 +32,9 @@ ], "@shared/home": [ "home/src/app/@shared/index.ts" + ], + "@core/personalize": [ + "src/app/@core/services/personalize.service.ts" ] } }, diff --git a/packages/toolkits/pro/template/tinyvue/.env.pages b/packages/toolkits/pro/template/tinyvue/.env.pages new file mode 100644 index 00000000..57ea5834 --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/.env.pages @@ -0,0 +1 @@ +VITE_CONTEXT=/vue-pro/pages/ \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyvue/config/plugin/arcoResolver.ts b/packages/toolkits/pro/template/tinyvue/config/plugin/arcoResolver.ts new file mode 100644 index 00000000..93de66a8 --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/config/plugin/arcoResolver.ts @@ -0,0 +1,19 @@ +/** + * If you use the template method for development, you can use the unplugin-vue-components plugin to enable on-demand loading support. + * 按需引入 + * https://github.com/antfu/unplugin-vue-components + * https://arco.design/vue/docs/start + * Although the Pro project is full of imported components, this plugin will be used by default. + * 虽然Pro项目中是全量引入组件,但此插件会默认使用。 + */ +import Components from 'unplugin-vue-components/vite'; +import { ArcoResolver } from 'unplugin-vue-components/resolvers'; + +export default function configArcoResolverPlugin() { + const arcoResolverPlugin = Components({ + dirs: [], // Avoid parsing src/components. 避免解析到src/components + deep: false, + resolvers: [ArcoResolver()], + }); + return arcoResolverPlugin; +} diff --git a/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.base.ts b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.base.ts new file mode 100644 index 00000000..05b4765b --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.base.ts @@ -0,0 +1,66 @@ +import { resolve } from 'path'; +import { defineConfig } from 'vite'; +import vue from '@vitejs/plugin-vue'; +import vueJsx from '@vitejs/plugin-vue-jsx'; +import svgLoader from 'vite-svg-loader'; +import { viteMockServe } from 'vite-plugin-mock'; + +export default defineConfig({ + plugins: [ + vue(), + vueJsx(), + svgLoader({ svgoConfig: {} }), + viteMockServe({ + // 更多配置见最下方 + mockPath: '../src/mock', // mock文件地址 + localEnabled: true, // 开发打包开关 + prodEnabled: true, // 生产打包开关 // 这样可以控制关闭mock的时候不让mock打包到最终代码内 + injectCode: ` import { setupProdMockServer } from '../src/mockProdServer'; setupProdMockServer(); `, + logger: false, // 是否在控制台显示请求日志 + supportTs: false, // 打开后,可以读取 ts 文件模块。 请注意,打开后将无法监视.js 文件 + injectFile: resolve('../src/main.ts'), + }), + ], + build: { + outDir: resolve(__dirname, '../dist/vue-pro/pages'), + commonjsOptions: { + transformMixedEsModules: true, + }, + }, + resolve: { + alias: [ + { + find: '@', + replacement: resolve(__dirname, '../src'), + }, + { + find: 'assets', + replacement: resolve(__dirname, '../src/assets'), + }, + { + find: 'vue-i18n', + replacement: 'vue-i18n/dist/vue-i18n.cjs.js', // Resolve the i18n warning issue + }, + { + find: 'vue', + replacement: 'vue/dist/vue.esm-bundler.js', // compile template + }, + ], + extensions: ['.ts', '.js'], + }, + define: { + 'process.env': {}, + }, + css: { + preprocessorOptions: { + less: { + modifyVars: { + hack: `true; @import (reference) "${resolve( + 'src/assets/style/breakpoint.less' + )}";`, + }, + javascriptEnabled: true, + }, + }, + }, +}); diff --git a/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.dev.ts b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.dev.ts new file mode 100644 index 00000000..2071c0aa --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.dev.ts @@ -0,0 +1,22 @@ +import { mergeConfig } from 'vite'; +import eslint from 'vite-plugin-eslint'; +import baseConfig from './vite.config.preview.base'; + +export default mergeConfig( + { + mode: 'development', + server: { + open: true, + fs: { + strict: true, + }, + }, + plugins: [ + eslint({ + include: ['src/**/*.ts', 'src/**/*.tsx', 'src/**/*.vue'], + exclude: ['node_modules'], + }), + ], + }, + baseConfig +); diff --git a/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.prod.ts b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.prod.ts new file mode 100644 index 00000000..2c8e0355 --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/config/vite.config.preview.prod.ts @@ -0,0 +1,29 @@ +import { mergeConfig } from 'vite'; +import baseConig from './vite.config.preview.base'; +import configCompressPlugin from './plugin/compress'; +import configVisualizerPlugin from './plugin/visualizer'; +import configArcoResolverPlugin from './plugin/arcoResolver'; + +export default mergeConfig( + { + mode: 'pages', + mock: true, + base: `${process.env.static_url_prefix}/tiny-pro-vue/${process.env.staticReleaseVersion}/vue-pro/pages`, + plugins: [ + configCompressPlugin('gzip'), + configVisualizerPlugin(), + configArcoResolverPlugin(), + ], + build: { + rollupOptions: { + output: { + manualChunks: { + vue: ['vue', 'vue-router', 'pinia', '@vueuse/core', 'vue-i18n'], + }, + }, + }, + chunkSizeWarningLimit: 2000, + }, + }, + baseConig +); diff --git a/packages/toolkits/pro/template/tinyvue/src/App.vue b/packages/toolkits/pro/template/tinyvue/src/App.vue index 8a4e1791..328fb058 100644 --- a/packages/toolkits/pro/template/tinyvue/src/App.vue +++ b/packages/toolkits/pro/template/tinyvue/src/App.vue @@ -12,3 +12,7 @@ provide('echarts', echarts); + + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyvue/src/assets/images/avatar.png b/packages/toolkits/pro/template/tinyvue/src/assets/images/avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..3bf37ce9bd67303211046554258be124ba652ca5 GIT binary patch literal 20133 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≫N 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 U1?Qx~V+_RTN-_b0BlJt5 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ℜA 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 literal 0 HcmV?d00001 diff --git a/packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.png b/packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0c6d42a957b7e4fea4ad36085788952173b2037c GIT binary patch literal 6905 zcmds6Urbw782`?>ZPy~O$w*ZSjHrWT^I;E8jR^_{!_aL}!widw`m{%5vIjNBq%lUf zCC&%qix2*fOi4_@WJcqHCKF7yiqXt$bU0)T5h-iSO7FeB=Nx~xC1a!Qc2{miImySl z=bZ0+-|xHMpXPoXd~A1TRYhF|5mj~V=y(G2c2JYwhra`2TMwqd^E>wLC#pVf6MJWC zb%?00udAcIyC=XtsC(uD1Jl1g)aQFNs+p)IFAtKif<){VVk}5X2D3BK;#y%%*rx@| zzmcRtOEo7{x zkfkNwLQa&V8YQocQfp+IG3*o=WijeXJqSxgL;601-%bGA z1sGedJjb&Doy&n%QJjww=TQ>cD8)jP?8!d+{Dwx^jarUIeY^d3^6&@o#%GZDQQ9ER zvAZLg<$NnyyJ}R=3lqO{PDh2J0qLLrt}ndRTnRX*cf(=DPwV52@bDc+Uf*=gRipO4 zIH3c`x*QlaPl|u7xE%12cJ!k+>SInp7UO&RrOAz^v|2dh&5E%WB~>%>su}!ug8U$( z_duiHz3P`kVu#V9QLKuX>Sl^{XGjVdJcPpWr6&2nCx=33o(e~+W!l%kh}8oiW?8Su zo(VHGAP4Jv4{WN=iCq+~5tfxFmDfVuJJihsHO)~@9R3hc^k*+0UagWJ`W*I^=Q@Tf3x+aCv49nE4 zjO8(n44w^-W$IXi4W8eQh-oMW> z6N7~>x!f~jG=@*HBcT0?(F3;5%O8pD?aVqnblyve!ccBxH?7YkFP!at^X6OcKVDUH z*FHuZ%}iIu6x@6QF?K@QWU!NcZ#B#VD5OM*{bwUN;i3sYmCewdv5`4x0;|A63P zMxk-3hH-jWF|~(Fjy^?c<0?vvIKhv|X3;&Pr2}yA_-HF&dxy<>gT0?ag*acEzJ0@bpMaif)UbE3}a7hdWRsl_dq!(wGJQdts5_ z8B5bLT#~6NWlFEqs{?U;=BK{TY;g#sl09)fIN7>hh$;O3pg*;66MEt)%ES$3W`vSt zNW+LLu2+hr@1pRFfHiBxt$R1lWy0Ywa`(S6YX2H(j(j|rby(NKyF0#k=-F5Q0S>C< A761SM literal 0 HcmV?d00001 diff --git a/packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.svg b/packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.svg new file mode 100644 index 00000000..b0a3620a --- /dev/null +++ b/packages/toolkits/pro/template/tinyvue/src/assets/images/opentiny-logo.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyvue/src/assets/style/menu.less b/packages/toolkits/pro/template/tinyvue/src/assets/style/menu.less index 40554490..0b5eba70 100644 --- a/packages/toolkits/pro/template/tinyvue/src/assets/style/menu.less +++ b/packages/toolkits/pro/template/tinyvue/src/assets/style/menu.less @@ -1,3 +1,8 @@ +// 菜单宽度 +:deep(.tiny-tree-menu) { + width: 250px; +} + // 去除默认右边竖线 :deep(.tiny-tree-menu::before) { border-right: none; @@ -22,5 +27,9 @@ .tree-node-name .tiny-svg ) { - fill: var(--ti-tree-menu-node-current-color); + fill: var(--ti-tree-menu-node-current-color); } +:deep(.tiny-collapse-item__header) { + background-color: var(--ti-common-color-bg-light-normal); + color: var(--ti-common-color-text-highlight); +} \ No newline at end of file diff --git a/packages/toolkits/pro/template/tinyvue/src/components/menu/index.vue b/packages/toolkits/pro/template/tinyvue/src/components/menu/index.vue index 1ccdbfc8..bc0ab587 100644 --- a/packages/toolkits/pro/template/tinyvue/src/components/menu/index.vue +++ b/packages/toolkits/pro/template/tinyvue/src/components/menu/index.vue @@ -10,12 +10,12 @@ @current-change="currentChange" >
@@ -32,78 +32,189 @@ IconCueL, IconUser, IconFiletext, - IconDesktopView, + IconApplication, } from '@opentiny/vue-icon'; - import router from '@/router'; import { TreeMenu as tinyTreeMenu } from '@opentiny/vue'; + import router from '@/router'; import { useUserStore } from '@/store'; + // icon图标 + const iconDownloadCloud = IconDownloadCloud(); + const iconFiles = IconFiles(); + const iconSetting = IconSetting(); + const iconSuccessful = IconSuccessful(); + const iconCueL = IconCueL(); + const iconUser = IconUser(); + const iconFiletext = IconFiletext(); + const iconApplication = IconApplication(); const tree = ref(); const expandeArr = ref(); - const treeData = ref({}); + const routerTitle = [ + { + value: 'Board', + name: 'menu.board', + icon: iconApplication, + bold: 'main-title', + }, + { + value: 'Home', + name: 'menu.home', + icon: null, + bold: 'title', + }, + { + value: 'Work', + name: 'menu.work', + icon: null, + bold: 'title', + }, + { + value: 'List', + name: 'menu.list', + icon: iconFiles, + bold: 'main-title', + }, + { + value: 'Table', + name: 'menu.list.searchTable', + icon: null, + bold: 'title', + }, + { + value: 'Form', + name: 'menu.form', + icon: iconSetting, + bold: 'main-title', + }, + { + value: 'Base', + name: 'menu.form.base', + icon: null, + bold: 'title', + }, + { + value: 'Step', + name: 'menu.form.step', + icon: null, + bold: 'title', + }, + { + value: 'Profile', + name: 'menu.profile', + icon: iconFiletext, + bold: 'main-title', + }, + { + value: 'Detail', + name: 'menu.profile.detail', + icon: null, + bold: 'title', + }, + { + value: 'Result', + name: 'menu.result', + icon: iconSuccessful, + bold: 'main-title', + }, + { + value: 'Success', + name: 'menu.result.success', + icon: null, + bold: 'title', + }, + { + value: 'Error', + name: 'menu.result.error', + icon: null, + bold: 'title', + }, + { + value: 'Cloud', + name: 'menu.cloud', + icon: iconDownloadCloud, + bold: 'main-title', + }, + { + value: 'Hello', + name: 'menu.cloud.hello', + icon: null, + bold: 'title', + }, + { + value: 'Contracts', + name: 'menu.cloud.contracts', + icon: null, + bold: 'title', + }, + { + value: 'Exception', + name: 'menu.exception', + icon: iconCueL, + bold: 'main-title', + }, + { + value: '403', + name: 'menu.exception.403', + icon: null, + bold: 'title', + }, + { + value: '404', + name: 'menu.exception.404', + icon: null, + bold: 'title', + }, + { + value: '500', + name: 'menu.exception.500', + icon: null, + bold: 'title', + }, + { + value: 'User', + name: 'menu.user', + icon: iconUser, + bold: 'main-title', + }, + { + value: 'Info', + name: 'menu.user.info', + icon: null, + bold: 'title', + }, + { + value: 'Setting', + name: 'menu.user.setting', + icon: null, + bold: 'title', + }, + ]; // 获取路由数据 const appRoute = computed(() => { return router .getRoutes() - .find((el: any) => el.name === 'root') as RouteRecordNormalized; + .find((el) => el.name === 'root') as RouteRecordNormalized; }); const copyRouter = JSON.parse(JSON.stringify(appRoute.value.children)); copyRouter.sort((a: RouteRecordNormalized, b: RouteRecordNormalized) => { return (a.meta.order || 0) - (b.meta.order || 0); }); + const userStore = useUserStore(); const role = computed(() => userStore.role); - const getMenuIcon = (id: string) => { - switch (id) { - case 'Cloud': { - return IconDownloadCloud(); - } - case 'List': { - return IconFiles(); - } - case 'Board': { - return IconDesktopView(); - } - case 'Form': { - return IconSetting(); - } - case 'Result': { - return IconSuccessful(); - } - case 'Exception': { - return IconCueL(); - } - case 'Profile': { - return IconFiletext(); - } - case 'User': { - return IconUser(); - } - default: { - return false; - } - } - }; - const filterRoutes = (routes: any, roles: any) => { - return routes - .filter((route: any) => { - if (route.meta && route.meta.roles) { - return roles.some((r: any) => route.meta.roles.includes(r)); - } - return true; - }) - .map((route: any) => { - if (route.children) { - route.children = filterRoutes(route.children, roles); - } - return route; - }); - }; + let treeData = ref(copyRouter); + watch( role, - (value: any) => { - treeData.value = filterRoutes(copyRouter, [value]); + (newValue, oldValue) => { + if (newValue === 'admin') { + treeData.value = copyRouter; + } else { + treeData.value = copyRouter.filter( + (item: { name: string }) => item.name !== 'User' + ); + } }, { immediate: true } ); @@ -113,7 +224,7 @@ */ watch( () => router.currentRoute.value.path, - (newValue: any) => { + (newValue) => { let data = newValue.split('/'); let result = data[data.length - 1]; const characters = [...result]; @@ -144,14 +255,13 @@ diff --git a/packages/toolkits/pro/template/tinyvue/src/components/navbar/index.vue b/packages/toolkits/pro/template/tinyvue/src/components/navbar/index.vue index ebac7a1a..e2ac6239 100644 --- a/packages/toolkits/pro/template/tinyvue/src/components/navbar/index.vue +++ b/packages/toolkits/pro/template/tinyvue/src/components/navbar/index.vue @@ -2,7 +2,11 @@