smart-admin-web 10.14.0 → 10.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/api/index.d.ts +41 -2
- package/dist/api/index.js +36 -15
- package/dist/api/index.js.map +1 -1
- package/dist/api/schema.d.ts +418 -6
- package/dist/assets/icons/ph-subset.json.js +7 -7
- package/dist/assets/smart-logo.svg.js +5 -0
- package/dist/assets/smart-logo.svg.js.map +1 -0
- package/dist/components/AppIcon.vue.js +9 -9
- package/dist/components/AppIcon.vue.js.map +1 -1
- package/dist/components/AppWatermark.vue.d.ts +14 -0
- package/dist/components/AppWatermark.vue.js +38 -0
- package/dist/components/AppWatermark.vue.js.map +1 -0
- package/dist/components/AppWatermark2.vue.js +5 -0
- package/dist/components/AppWatermark2.vue.js.map +1 -0
- package/dist/components/Chart/PieChart.vue.d.ts +1 -1
- package/dist/components/Chart/echarts.js +15 -20
- package/dist/components/Chart/echarts.js.map +1 -1
- package/dist/components/CronEditor/index.vue.js +1 -1
- package/dist/components/CronEditor/index2.vue.js +2 -1
- package/dist/components/CronEditor/index2.vue.js.map +1 -1
- package/dist/components/DetailPage/index.vue.js +2 -2
- package/dist/components/DetailPage/index2.vue.js.map +1 -1
- package/dist/components/DictTag/index.vue.js.map +1 -1
- package/dist/components/ErrorBoundary/index.vue.js +2 -2
- package/dist/components/ErrorBoundary/index2.vue.js +1 -1
- package/dist/components/ErrorBoundary/index2.vue.js.map +1 -1
- package/dist/components/FormContainer/index.vue.js +91 -56
- package/dist/components/FormContainer/index.vue.js.map +1 -1
- package/dist/components/ImportWizard/index.vue.js +1 -1
- package/dist/components/ImportWizard/index2.vue.js +44 -41
- package/dist/components/ImportWizard/index2.vue.js.map +1 -1
- package/dist/components/MenuSearch.vue.js +2 -2
- package/dist/components/MenuSearch2.vue.js +19 -18
- package/dist/components/MenuSearch2.vue.js.map +1 -1
- package/dist/components/PasswordStrength/index.vue.js +2 -2
- package/dist/components/PasswordStrength/index2.vue.js +20 -18
- package/dist/components/PasswordStrength/index2.vue.js.map +1 -1
- package/dist/components/SmartLogo.vue.d.ts +3 -0
- package/dist/components/SmartLogo.vue.js +1 -1
- package/dist/components/SmartLogo2.vue.js +22 -64
- package/dist/components/SmartLogo2.vue.js.map +1 -1
- package/dist/{views/system/config/components/GroupExtraConfig.vue.d.ts → components/TableTotal/index.vue.d.ts} +1 -4
- package/dist/components/{SelectTable → TableTotal}/index.vue.js +1 -1
- package/dist/components/TableTotal/index2.vue.js +16 -0
- package/dist/components/TableTotal/index2.vue.js.map +1 -0
- package/dist/components/TableZoomButton/index.vue.js.map +1 -1
- package/dist/components/UserPicker/index.vue.js +2 -2
- package/dist/components/UserPicker/index2.vue.js +176 -117
- package/dist/components/UserPicker/index2.vue.js.map +1 -1
- package/dist/composables/useBatchDelete.js.map +1 -1
- package/dist/composables/useLayoutMenu.js +17 -16
- package/dist/composables/useLayoutMenu.js.map +1 -1
- package/dist/composables/useLoginHero.d.ts +2 -0
- package/dist/composables/useLoginHero.js +22 -0
- package/dist/composables/useLoginHero.js.map +1 -0
- package/dist/composables/useModule.js +39 -29
- package/dist/composables/useModule.js.map +1 -1
- package/dist/composables/usePageTitle.js +16 -14
- package/dist/composables/usePageTitle.js.map +1 -1
- package/dist/composables/useShellBreakpoint.d.ts +19 -0
- package/dist/composables/useShellBreakpoint.js +37 -0
- package/dist/composables/useShellBreakpoint.js.map +1 -0
- package/dist/composables/useSite.d.ts +20 -0
- package/dist/composables/useSite.js +18 -13
- package/dist/composables/useSite.js.map +1 -1
- package/dist/composables/useTabTitle.js.map +1 -1
- package/dist/composables/useTableTitle.d.ts +6 -0
- package/dist/composables/useTableTitle.js +11 -0
- package/dist/composables/useTableTitle.js.map +1 -0
- package/dist/composables/useTableZoom.d.ts +5 -0
- package/dist/composables/useTableZoom.js.map +1 -1
- package/dist/composables/useTheme.d.ts +2 -2
- package/dist/composables/useTheme.js +23 -20
- package/dist/composables/useTheme.js.map +1 -1
- package/dist/createSmartAdmin.d.ts +12 -2
- package/dist/createSmartAdmin.js +72 -60
- package/dist/createSmartAdmin.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +223 -208
- package/dist/index.js.map +1 -1
- package/dist/layouts/AccentPicker.vue.js +8 -0
- package/dist/layouts/AccentPicker.vue.js.map +1 -0
- package/dist/layouts/AccentPicker2.vue.js +131 -0
- package/dist/layouts/AccentPicker2.vue.js.map +1 -0
- package/dist/layouts/AppHeader.vue.d.ts +8 -1
- package/dist/layouts/AppHeader.vue.js +2 -2
- package/dist/layouts/AppHeader2.vue.js +317 -235
- package/dist/layouts/AppHeader2.vue.js.map +1 -1
- package/dist/layouts/NoticeBell.vue.js +2 -2
- package/dist/layouts/NoticeBell2.vue.js +1 -1
- package/dist/layouts/NoticeBell2.vue.js.map +1 -1
- package/dist/layouts/PersonalLayout.vue.js +2 -2
- package/dist/layouts/PersonalLayout2.vue.js +69 -47
- package/dist/layouts/PersonalLayout2.vue.js.map +1 -1
- package/dist/layouts/SettingsDrawer.vue.js +3 -3
- package/dist/layouts/SettingsDrawer2.vue.js +261 -325
- package/dist/layouts/SettingsDrawer2.vue.js.map +1 -1
- package/dist/layouts/TabsBar.vue.js +2 -2
- package/dist/layouts/TabsBar2.vue.js +97 -69
- package/dist/layouts/TabsBar2.vue.js.map +1 -1
- package/dist/layouts/components/SideNav.vue.d.ts +3 -0
- package/dist/layouts/components/SideNav.vue.js +1 -1
- package/dist/layouts/components/SideNav2.vue.js +54 -26
- package/dist/layouts/components/SideNav2.vue.js.map +1 -1
- package/dist/layouts/default.vue.js +1 -1
- package/dist/layouts/default2.vue.js +170 -140
- package/dist/layouts/default2.vue.js.map +1 -1
- package/dist/lib/favicon.d.ts +1 -0
- package/dist/lib/favicon.js +12 -0
- package/dist/lib/favicon.js.map +1 -0
- package/dist/lib/loginHero.d.ts +16 -0
- package/dist/lib/loginHero.js +33 -0
- package/dist/lib/loginHero.js.map +1 -0
- package/dist/lib/logoCrop.d.ts +25 -0
- package/dist/lib/logoCrop.js +22 -0
- package/dist/lib/logoCrop.js.map +1 -0
- package/dist/lib/runtime.d.ts +2 -0
- package/dist/lib/runtime.js +1 -1
- package/dist/lib/runtime.js.map +1 -1
- package/dist/lib/securityRules.d.ts +26 -0
- package/dist/lib/securityRules.js +86 -0
- package/dist/lib/securityRules.js.map +1 -0
- package/dist/lib/watermark.d.ts +110 -0
- package/dist/lib/watermark.js +151 -0
- package/dist/lib/watermark.js.map +1 -0
- package/dist/locales/en-US.d.ts +462 -42
- package/dist/locales/en-US.js +491 -78
- package/dist/locales/en-US.js.map +1 -1
- package/dist/locales/kernelMenuTitles.d.ts +1 -0
- package/dist/locales/kernelMenuTitles.js +128 -0
- package/dist/locales/kernelMenuTitles.js.map +1 -0
- package/dist/locales/menuTitle.d.ts +3 -0
- package/dist/locales/menuTitle.js +14 -12
- package/dist/locales/menuTitle.js.map +1 -1
- package/dist/locales/zh-CN.d.ts +462 -42
- package/dist/locales/zh-CN.js +490 -81
- package/dist/locales/zh-CN.js.map +1 -1
- package/dist/router/index.js +41 -32
- package/dist/router/index.js.map +1 -1
- package/dist/router/namedPage.d.ts +4 -0
- package/dist/router/namedPage.js +7 -7
- package/dist/router/namedPage.js.map +1 -1
- package/dist/router/viewRegistry.js +12 -12
- package/dist/router/viewRegistry.js.map +1 -1
- package/dist/stores/app.d.ts +0 -12
- package/dist/stores/app.js +11 -12
- package/dist/stores/app.js.map +1 -1
- package/dist/stores/tabs.js.map +1 -1
- package/dist/stores/user.d.ts +10 -0
- package/dist/stores/user.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/theme/accentTokens.d.ts +27 -0
- package/dist/theme/accentTokens.js +54 -0
- package/dist/theme/accentTokens.js.map +1 -0
- package/dist/theme/accents.d.ts +21 -1
- package/dist/theme/accents.js +11 -2
- package/dist/theme/accents.js.map +1 -1
- package/dist/theme/mix.d.ts +58 -7
- package/dist/theme/mix.js +115 -30
- package/dist/theme/mix.js.map +1 -1
- package/dist/theme/naive-theme.d.ts +5 -2
- package/dist/theme/naive-theme.js +405 -75
- package/dist/theme/naive-theme.js.map +1 -1
- package/dist/utils/jwt.d.ts +8 -0
- package/dist/utils/jwt.js +14 -0
- package/dist/utils/jwt.js.map +1 -0
- package/dist/utils/menuIcon.d.ts +2 -0
- package/dist/utils/menuIcon.js +8 -0
- package/dist/utils/menuIcon.js.map +1 -0
- package/dist/utils/oauthBrand.d.ts +34 -9
- package/dist/utils/oauthBrand.js +70 -74
- package/dist/utils/oauthBrand.js.map +1 -1
- package/dist/utils/tableFilter.d.ts +88 -0
- package/dist/utils/tableFilter.js +116 -0
- package/dist/utils/tableFilter.js.map +1 -0
- package/dist/utils/tableToolbar.d.ts +18 -0
- package/dist/utils/tableToolbar.js +11 -0
- package/dist/utils/tableToolbar.js.map +1 -0
- package/dist/utils/treeFilter.d.ts +20 -0
- package/dist/utils/treeFilter.js +24 -0
- package/dist/utils/treeFilter.js.map +1 -0
- package/dist/views/dashboard/ShortcutPicker.vue.js +1 -1
- package/dist/views/dashboard/ShortcutPicker2.vue.js +73 -48
- package/dist/views/dashboard/ShortcutPicker2.vue.js.map +1 -1
- package/dist/views/dashboard/biz.vue.js +1 -1
- package/dist/views/dashboard/biz2.vue.js +310 -257
- package/dist/views/dashboard/biz2.vue.js.map +1 -1
- package/dist/views/dashboard/workbench.vue.js +2 -2
- package/dist/views/dashboard/workbench2.vue.js +141 -155
- package/dist/views/dashboard/workbench2.vue.js.map +1 -1
- package/dist/views/embed/iframe.vue.js +2 -2
- package/dist/views/embed/iframe2.vue.js +22 -15
- package/dist/views/embed/iframe2.vue.js.map +1 -1
- package/dist/views/error/404.vue.js +2 -2
- package/dist/views/error/4042.vue.js +33 -24
- package/dist/views/error/4042.vue.js.map +1 -1
- package/dist/views/error/BootError.vue.js +1 -1
- package/dist/views/error/BootError2.vue.js +59 -48
- package/dist/views/error/BootError2.vue.js.map +1 -1
- package/dist/views/error/MissingRoute.vue.js +2 -2
- package/dist/views/error/MissingRoute2.vue.js +34 -15
- package/dist/views/error/MissingRoute2.vue.js.map +1 -1
- package/dist/views/login/LoginForm.vue.d.ts +7 -1
- package/dist/views/login/LoginForm.vue.js +2 -2
- package/dist/views/login/LoginForm2.vue.js +580 -488
- package/dist/views/login/LoginForm2.vue.js.map +1 -1
- package/dist/views/login/components/LoginDesk.vue.d.ts +36 -0
- package/dist/views/login/components/LoginDesk.vue.js +9 -0
- package/dist/views/login/components/LoginDesk.vue.js.map +1 -0
- package/dist/views/login/components/LoginDesk2.vue.js +100 -0
- package/dist/views/login/components/LoginDesk2.vue.js.map +1 -0
- package/dist/views/login/components/LoginHeroPanel.vue.d.ts +18 -0
- package/dist/views/login/components/LoginHeroPanel.vue.js +8 -0
- package/dist/views/login/components/LoginHeroPanel.vue.js.map +1 -0
- package/dist/views/login/components/LoginHeroPanel2.vue.js +61 -0
- package/dist/views/login/components/LoginHeroPanel2.vue.js.map +1 -0
- package/dist/views/login/index.vue.js +1 -1
- package/dist/views/login/index2.vue.js +141 -71
- package/dist/views/login/index2.vue.js.map +1 -1
- package/dist/views/login/layout.d.ts +11 -0
- package/dist/views/login/layout.js +27 -0
- package/dist/views/login/layout.js.map +1 -0
- package/dist/views/mfa/index.vue.js +2 -2
- package/dist/views/mfa/index2.vue.js +367 -321
- package/dist/views/mfa/index2.vue.js.map +1 -1
- package/dist/views/module/index.vue.js +2 -2
- package/dist/views/module/index2.vue.js +132 -99
- package/dist/views/module/index2.vue.js.map +1 -1
- package/dist/views/oauth/callback.vue.js +2 -2
- package/dist/views/oauth/callback2.vue.js +65 -51
- package/dist/views/oauth/callback2.vue.js.map +1 -1
- package/dist/views/personal/bindings.vue.js +2 -2
- package/dist/views/personal/bindings2.vue.js +98 -94
- package/dist/views/personal/bindings2.vue.js.map +1 -1
- package/dist/views/personal/notice2.vue.js +103 -76
- package/dist/views/personal/notice2.vue.js.map +1 -1
- package/dist/views/personal/password2.vue.js +47 -40
- package/dist/views/personal/password2.vue.js.map +1 -1
- package/dist/views/personal/profile.vue.js +3 -3
- package/dist/views/personal/profile2.vue.js +24 -18
- package/dist/views/personal/profile2.vue.js.map +1 -1
- package/dist/views/personal/security.vue.js +2 -2
- package/dist/views/personal/security2.vue.js +65 -53
- package/dist/views/personal/security2.vue.js.map +1 -1
- package/dist/views/personal/sessions.vue.js +2 -2
- package/dist/views/personal/sessions2.vue.js +67 -62
- package/dist/views/personal/sessions2.vue.js.map +1 -1
- package/dist/views/system/ai-model/components/ProviderCard.vue.js +2 -2
- package/dist/views/system/ai-model/components/ProviderCard2.vue.js +142 -130
- package/dist/views/system/ai-model/components/ProviderCard2.vue.js.map +1 -1
- package/dist/views/system/ai-model/components/ProviderForm.vue.js +2 -2
- package/dist/views/system/ai-model/components/ProviderForm2.vue.js +71 -70
- package/dist/views/system/ai-model/components/ProviderForm2.vue.js.map +1 -1
- package/dist/views/system/ai-model/index.vue.js +2 -2
- package/dist/views/system/ai-model/index2.vue.js +99 -99
- package/dist/views/system/ai-model/index2.vue.js.map +1 -1
- package/dist/views/system/ai-model/presets.d.ts +1 -1
- package/dist/views/system/ai-model/presets.js +18 -18
- package/dist/views/system/ai-model/presets.js.map +1 -1
- package/dist/views/system/ai-usage/index.vue.js +2 -2
- package/dist/views/system/ai-usage/index2.vue.js +356 -258
- package/dist/views/system/ai-usage/index2.vue.js.map +1 -1
- package/dist/views/system/api-docs/index.vue.js +5 -2
- package/dist/views/system/api-docs/index.vue.js.map +1 -1
- package/dist/views/system/api-docs/index2.vue.js +92 -42
- package/dist/views/system/api-docs/index2.vue.js.map +1 -1
- package/dist/views/system/cache/index.vue.js +2 -2
- package/dist/views/system/cache/index2.vue.js +74 -80
- package/dist/views/system/cache/index2.vue.js.map +1 -1
- package/dist/views/system/config/components/AdminMock.vue.js +8 -0
- package/dist/views/system/config/components/AdminMock.vue.js.map +1 -0
- package/dist/views/system/config/components/AdminMock2.vue.js +93 -0
- package/dist/views/system/config/components/AdminMock2.vue.js.map +1 -0
- package/dist/views/system/config/components/AdvancedSection.vue.js +8 -0
- package/dist/views/system/config/components/AdvancedSection.vue.js.map +1 -0
- package/dist/views/system/config/components/AdvancedSection2.vue.js +163 -0
- package/dist/views/system/config/components/AdvancedSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/BrandSection.vue.d.ts +7 -0
- package/dist/views/system/config/components/BrandSection.vue.js +8 -0
- package/dist/views/system/config/components/BrandSection.vue.js.map +1 -0
- package/dist/views/system/config/components/BrandSection2.vue.js +266 -0
- package/dist/views/system/config/components/BrandSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgGroup.vue.d.ts +18 -0
- package/dist/views/system/config/components/CfgGroup.vue.js +8 -0
- package/dist/views/system/config/components/CfgGroup.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgGroup2.vue.js +22 -0
- package/dist/views/system/config/components/CfgGroup2.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgRow.vue.d.ts +26 -0
- package/dist/views/system/config/components/CfgRow.vue.js +9 -0
- package/dist/views/system/config/components/CfgRow.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgRow2.vue.js +54 -0
- package/dist/views/system/config/components/CfgRow2.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgSegment.vue.d.ts +28 -0
- package/dist/views/system/config/components/CfgSegment.vue.js +8 -0
- package/dist/views/system/config/components/CfgSegment.vue.js.map +1 -0
- package/dist/views/system/config/components/CfgSegment2.vue.js +45 -0
- package/dist/views/system/config/components/CfgSegment2.vue.js.map +1 -0
- package/dist/views/system/config/components/ConfigFormModal.vue.js +4 -1
- package/dist/views/system/config/components/ConfigFormModal.vue.js.map +1 -1
- package/dist/views/system/config/components/ConfigFormModal2.vue.js +72 -60
- package/dist/views/system/config/components/ConfigFormModal2.vue.js.map +1 -1
- package/dist/views/system/config/components/JobSection.vue.js +8 -0
- package/dist/views/system/config/components/JobSection.vue.js.map +1 -0
- package/dist/views/system/config/components/JobSection2.vue.js +140 -0
- package/dist/views/system/config/components/JobSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/LoginMock.vue.d.ts +8 -0
- package/dist/views/system/config/components/LoginMock.vue.js +8 -0
- package/dist/views/system/config/components/LoginMock.vue.js.map +1 -0
- package/dist/views/system/config/components/LoginMock2.vue.js +132 -0
- package/dist/views/system/config/components/LoginMock2.vue.js.map +1 -0
- package/dist/views/system/config/components/LogoCropper.vue.d.ts +10 -0
- package/dist/views/system/config/components/LogoCropper.vue.js +8 -0
- package/dist/views/system/config/components/LogoCropper.vue.js.map +1 -0
- package/dist/views/system/config/components/LogoCropper2.vue.js +122 -0
- package/dist/views/system/config/components/LogoCropper2.vue.js.map +1 -0
- package/dist/views/system/config/components/LogoEditor.vue.js +8 -0
- package/dist/views/system/config/components/LogoEditor.vue.js.map +1 -0
- package/dist/views/system/config/components/LogoEditor2.vue.js +161 -0
- package/dist/views/system/config/components/LogoEditor2.vue.js.map +1 -0
- package/dist/views/system/config/components/ProviderSheet.vue.d.ts +17 -0
- package/dist/views/system/config/components/ProviderSheet.vue.js +8 -0
- package/dist/views/system/config/components/ProviderSheet.vue.js.map +1 -0
- package/dist/views/system/config/components/ProviderSheet2.vue.js +343 -0
- package/dist/views/system/config/components/ProviderSheet2.vue.js.map +1 -0
- package/dist/{layouts/SettingRow.vue.d.ts → views/system/config/components/ScaleToFit.vue.d.ts} +2 -1
- package/dist/views/system/config/components/ScaleToFit.vue.js +8 -0
- package/dist/views/system/config/components/ScaleToFit.vue.js.map +1 -0
- package/dist/views/system/config/components/ScaleToFit2.vue.js +41 -0
- package/dist/views/system/config/components/ScaleToFit2.vue.js.map +1 -0
- package/dist/views/system/config/components/SectionLayout.vue.d.ts +30 -0
- package/dist/views/system/config/components/SectionLayout.vue.js +8 -0
- package/dist/views/system/config/components/SectionLayout.vue.js.map +1 -0
- package/dist/views/system/config/components/SectionLayout2.vue.js +69 -0
- package/dist/views/system/config/components/SectionLayout2.vue.js.map +1 -0
- package/dist/views/system/config/components/SecuritySection.vue.js +8 -0
- package/dist/views/system/config/components/SecuritySection.vue.js.map +1 -0
- package/dist/views/system/config/components/SecuritySection2.vue.js +417 -0
- package/dist/views/system/config/components/SecuritySection2.vue.js.map +1 -0
- package/dist/views/system/config/components/SensitiveSection.vue.js +8 -0
- package/dist/views/system/config/components/SensitiveSection.vue.js.map +1 -0
- package/dist/views/system/config/components/SensitiveSection2.vue.js +214 -0
- package/dist/views/system/config/components/SensitiveSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/SigninSection.vue.js +8 -0
- package/dist/views/system/config/components/SigninSection.vue.js.map +1 -0
- package/dist/views/system/config/components/SigninSection2.vue.js +201 -0
- package/dist/views/system/config/components/SigninSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/UploadSection.vue.js +8 -0
- package/dist/views/system/config/components/UploadSection.vue.js.map +1 -0
- package/dist/views/system/config/components/UploadSection2.vue.js +176 -0
- package/dist/views/system/config/components/UploadSection2.vue.js.map +1 -0
- package/dist/views/system/config/components/WatermarkSection.vue.js +8 -0
- package/dist/views/system/config/components/WatermarkSection.vue.js.map +1 -0
- package/dist/views/system/config/components/WatermarkSection2.vue.js +284 -0
- package/dist/views/system/config/components/WatermarkSection2.vue.js.map +1 -0
- package/dist/views/system/config/draft.d.ts +148 -0
- package/dist/views/system/config/draft.js +170 -0
- package/dist/views/system/config/draft.js.map +1 -0
- package/dist/views/system/config/flash.d.ts +2 -0
- package/dist/views/system/config/flash.js +9 -0
- package/dist/views/system/config/flash.js.map +1 -0
- package/dist/views/system/config/groups.d.ts +38 -7
- package/dist/views/system/config/groups.js +104 -14
- package/dist/views/system/config/groups.js.map +1 -1
- package/dist/views/system/config/index.vue.js +6 -2
- package/dist/views/system/config/index.vue.js.map +1 -1
- package/dist/views/system/config/index2.vue.js +201 -111
- package/dist/views/system/config/index2.vue.js.map +1 -1
- package/dist/views/system/config/layoutMode.d.ts +23 -0
- package/dist/views/system/config/layoutMode.js +28 -0
- package/dist/views/system/config/layoutMode.js.map +1 -0
- package/dist/views/system/config/providerForm.d.ts +33 -0
- package/dist/views/system/config/providerForm.js +63 -0
- package/dist/views/system/config/providerForm.js.map +1 -0
- package/dist/views/system/dict/index.vue.js +2 -2
- package/dist/views/system/dict/index2.vue.js +471 -366
- package/dist/views/system/dict/index2.vue.js.map +1 -1
- package/dist/views/system/file/index2.vue.js +91 -76
- package/dist/views/system/file/index2.vue.js.map +1 -1
- package/dist/views/system/job/index.vue.js +3 -3
- package/dist/views/system/job/index2.vue.js +897 -828
- package/dist/views/system/job/index2.vue.js.map +1 -1
- package/dist/views/system/job-log/components/AttemptTable.vue.d.ts +8 -0
- package/dist/views/system/job-log/components/AttemptTable.vue.js +5 -0
- package/dist/views/system/job-log/components/AttemptTable.vue.js.map +1 -0
- package/dist/views/system/job-log/components/AttemptTable2.vue.js +54 -0
- package/dist/views/system/job-log/components/AttemptTable2.vue.js.map +1 -0
- package/dist/views/system/job-log/index.vue.js +2 -2
- package/dist/views/system/job-log/index2.vue.js +193 -207
- package/dist/views/system/job-log/index2.vue.js.map +1 -1
- package/dist/views/system/job-log/runStatus.d.ts +13 -0
- package/dist/views/system/job-log/runStatus.js +26 -0
- package/dist/views/system/job-log/runStatus.js.map +1 -0
- package/dist/views/system/job-monitor/index.vue.js +2 -2
- package/dist/views/system/job-monitor/index2.vue.js +172 -180
- package/dist/views/system/job-monitor/index2.vue.js.map +1 -1
- package/dist/views/system/log/exception/index.vue.js +2 -2
- package/dist/views/system/log/exception/index2.vue.js +135 -96
- package/dist/views/system/log/exception/index2.vue.js.map +1 -1
- package/dist/views/system/log/login/index2.vue.js +62 -41
- package/dist/views/system/log/login/index2.vue.js.map +1 -1
- package/dist/views/system/log/op/index.vue.js +2 -2
- package/dist/views/system/log/op/index2.vue.js +200 -162
- package/dist/views/system/log/op/index2.vue.js.map +1 -1
- package/dist/views/system/menu/components/ButtonManager.vue.js +2 -2
- package/dist/views/system/menu/components/ButtonManager2.vue.js +206 -190
- package/dist/views/system/menu/components/ButtonManager2.vue.js.map +1 -1
- package/dist/views/system/menu/components/MenuFormModal.vue.js +2 -2
- package/dist/views/system/menu/components/MenuFormModal2.vue.js +127 -118
- package/dist/views/system/menu/components/MenuFormModal2.vue.js.map +1 -1
- package/dist/views/system/menu/index.vue.js +1 -1
- package/dist/views/system/menu/index2.vue.js +216 -183
- package/dist/views/system/menu/index2.vue.js.map +1 -1
- package/dist/views/system/module/index.vue.js +1 -1
- package/dist/views/system/module/index2.vue.js +177 -144
- package/dist/views/system/module/index2.vue.js.map +1 -1
- package/dist/views/system/monitor/index.vue.js +2 -2
- package/dist/views/system/monitor/index2.vue.js +134 -149
- package/dist/views/system/monitor/index2.vue.js.map +1 -1
- package/dist/views/system/notice/index.vue.js +1 -1
- package/dist/views/system/notice/index2.vue.js +209 -181
- package/dist/views/system/notice/index2.vue.js.map +1 -1
- package/dist/views/system/org/index.vue.js +1 -1
- package/dist/views/system/org/index2.vue.js +278 -248
- package/dist/views/system/org/index2.vue.js.map +1 -1
- package/dist/views/system/position/index.vue.js +5 -2
- package/dist/views/system/position/index.vue.js.map +1 -1
- package/dist/views/system/position/index2.vue.js +128 -92
- package/dist/views/system/position/index2.vue.js.map +1 -1
- package/dist/views/system/recycle/index.vue.js +2 -2
- package/dist/views/system/recycle/index2.vue.js +90 -67
- package/dist/views/system/recycle/index2.vue.js.map +1 -1
- package/dist/views/system/role/components/GrantMenuSheet.vue.d.ts +20 -0
- package/dist/views/system/role/components/GrantMenuSheet.vue.js +8 -0
- package/dist/views/system/role/components/GrantMenuSheet.vue.js.map +1 -0
- package/dist/views/system/role/components/GrantMenuSheet2.vue.js +117 -0
- package/dist/views/system/role/components/GrantMenuSheet2.vue.js.map +1 -0
- package/dist/views/system/role/components/GrantMenuTable.vue.d.ts +6 -4
- package/dist/views/system/role/components/GrantMenuTable.vue.js +2 -2
- package/dist/views/system/role/components/GrantMenuTable2.vue.js +279 -177
- package/dist/views/system/role/components/GrantMenuTable2.vue.js.map +1 -1
- package/dist/views/system/role/components/MatchText.vue.d.ts +7 -0
- package/dist/views/system/role/components/MatchText.vue.js +8 -0
- package/dist/views/system/role/components/MatchText.vue.js.map +1 -0
- package/dist/views/system/role/components/MatchText2.vue.js +29 -0
- package/dist/views/system/role/components/MatchText2.vue.js.map +1 -0
- package/dist/views/system/role/components/grantMenuGroups.d.ts +36 -0
- package/dist/views/system/role/components/grantMenuGroups.js +110 -48
- package/dist/views/system/role/components/grantMenuGroups.js.map +1 -1
- package/dist/views/system/role/index.vue.js +5 -2
- package/dist/views/system/role/index.vue.js.map +1 -1
- package/dist/views/system/role/index2.vue.js +181 -165
- package/dist/views/system/role/index2.vue.js.map +1 -1
- package/dist/views/system/session/index2.vue.js +75 -49
- package/dist/views/system/session/index2.vue.js.map +1 -1
- package/dist/views/system/user/components/ResetPasswordModal.vue.js +2 -2
- package/dist/views/system/user/components/ResetPasswordModal2.vue.js +2 -0
- package/dist/views/system/user/components/ResetPasswordModal2.vue.js.map +1 -1
- package/dist/views/system/user/components/UserFormModal.vue.js +2 -2
- package/dist/views/system/user/components/UserFormModal2.vue.js +77 -76
- package/dist/views/system/user/components/UserFormModal2.vue.js.map +1 -1
- package/dist/views/system/user/index.vue.js +2 -2
- package/dist/views/system/user/index2.vue.js +362 -275
- package/dist/views/system/user/index2.vue.js.map +1 -1
- package/package.json +6 -8
- package/dist/components/SelectTable/index.vue.d.ts +0 -76
- package/dist/components/SelectTable/index2.vue.js +0 -256
- package/dist/components/SelectTable/index2.vue.js.map +0 -1
- package/dist/composables/useTableRowSort.d.ts +0 -20
- package/dist/composables/useTableRowSort.js +0 -59
- package/dist/composables/useTableRowSort.js.map +0 -1
- package/dist/layouts/LayoutModeCards.vue.js +0 -8
- package/dist/layouts/LayoutModeCards.vue.js.map +0 -1
- package/dist/layouts/LayoutModeCards2.vue.js +0 -67
- package/dist/layouts/LayoutModeCards2.vue.js.map +0 -1
- package/dist/layouts/SettingRow.vue.js +0 -8
- package/dist/layouts/SettingRow.vue.js.map +0 -1
- package/dist/layouts/SettingRow2.vue.js +0 -23
- package/dist/layouts/SettingRow2.vue.js.map +0 -1
- package/dist/views/login/skins/AuroraGlass.vue.js +0 -8
- package/dist/views/login/skins/AuroraGlass.vue.js.map +0 -1
- package/dist/views/login/skins/AuroraGlass2.vue.js +0 -80
- package/dist/views/login/skins/AuroraGlass2.vue.js.map +0 -1
- package/dist/views/login/skins/SplitPanel.vue.js +0 -8
- package/dist/views/login/skins/SplitPanel.vue.js.map +0 -1
- package/dist/views/login/skins/SplitPanel2.vue.js +0 -85
- package/dist/views/login/skins/SplitPanel2.vue.js.map +0 -1
- package/dist/views/login/skins/Spotlight.vue.js +0 -8
- package/dist/views/login/skins/Spotlight.vue.js.map +0 -1
- package/dist/views/login/skins/Spotlight2.vue.js +0 -36
- package/dist/views/login/skins/Spotlight2.vue.js.map +0 -1
- package/dist/views/login/skins.d.ts +0 -8
- package/dist/views/login/skins.js +0 -13
- package/dist/views/login/skins.js.map +0 -1
- package/dist/views/system/config/components/ExternalAuthConfig.vue.js +0 -8
- package/dist/views/system/config/components/ExternalAuthConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/ExternalAuthConfig2.vue.js +0 -218
- package/dist/views/system/config/components/ExternalAuthConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/GroupExtraConfig.vue.js +0 -8
- package/dist/views/system/config/components/GroupExtraConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/GroupExtraConfig2.vue.js +0 -108
- package/dist/views/system/config/components/GroupExtraConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/HighSensConfig.vue.js +0 -5
- package/dist/views/system/config/components/HighSensConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/HighSensConfig2.vue.js +0 -134
- package/dist/views/system/config/components/HighSensConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/JobConfig.vue.js +0 -5
- package/dist/views/system/config/components/JobConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/JobConfig2.vue.js +0 -116
- package/dist/views/system/config/components/JobConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/OtherConfig.vue.js +0 -5
- package/dist/views/system/config/components/OtherConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/OtherConfig2.vue.js +0 -121
- package/dist/views/system/config/components/OtherConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/SecurityConfig.vue.js +0 -8
- package/dist/views/system/config/components/SecurityConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/SecurityConfig2.vue.js +0 -456
- package/dist/views/system/config/components/SecurityConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/SysBaseConfig.vue.js +0 -5
- package/dist/views/system/config/components/SysBaseConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/SysBaseConfig2.vue.js +0 -107
- package/dist/views/system/config/components/SysBaseConfig2.vue.js.map +0 -1
- package/dist/views/system/config/components/UploadConfig.vue.d.ts +0 -3
- package/dist/views/system/config/components/UploadConfig.vue.js +0 -5
- package/dist/views/system/config/components/UploadConfig.vue.js.map +0 -1
- package/dist/views/system/config/components/UploadConfig2.vue.js +0 -135
- package/dist/views/system/config/components/UploadConfig2.vue.js.map +0 -1
- /package/dist/components/{SelectTable → TableTotal}/index.vue.js.map +0 -0
- /package/dist/layouts/{LayoutModeCards.vue.d.ts → AccentPicker.vue.d.ts} +0 -0
- /package/dist/views/{login/skins/AuroraGlass.vue.d.ts → system/config/components/AdminMock.vue.d.ts} +0 -0
- /package/dist/views/{login/skins/SplitPanel.vue.d.ts → system/config/components/AdvancedSection.vue.d.ts} +0 -0
- /package/dist/views/{login/skins/Spotlight.vue.d.ts → system/config/components/JobSection.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{ExternalAuthConfig.vue.d.ts → LogoEditor.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{HighSensConfig.vue.d.ts → SecuritySection.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{JobConfig.vue.d.ts → SensitiveSection.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{OtherConfig.vue.d.ts → SigninSection.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{SecurityConfig.vue.d.ts → UploadSection.vue.d.ts} +0 -0
- /package/dist/views/system/config/components/{SysBaseConfig.vue.d.ts → WatermarkSection.vue.d.ts} +0 -0
package/dist/locales/zh-CN.js
CHANGED
|
@@ -79,10 +79,12 @@ const e = {
|
|
|
79
79
|
comfortable: "舒适",
|
|
80
80
|
compact: "紧凑",
|
|
81
81
|
language: "语言",
|
|
82
|
-
loginStyle: "登录页样式",
|
|
83
82
|
collapse: "折叠菜单",
|
|
84
83
|
openMenu: "打开菜单",
|
|
85
84
|
switchModule: "切换应用",
|
|
85
|
+
appearance: "外观设置",
|
|
86
|
+
back: "后退",
|
|
87
|
+
forward: "前进",
|
|
86
88
|
logout: "退出登录",
|
|
87
89
|
personalCenter: "个人中心",
|
|
88
90
|
clearCache: "清除缓存",
|
|
@@ -108,10 +110,21 @@ const e = {
|
|
|
108
110
|
tabAppearance: "外观",
|
|
109
111
|
tabLayout: "布局",
|
|
110
112
|
tabGeneral: "通用",
|
|
111
|
-
themeMode: "
|
|
113
|
+
themeMode: "外观模式",
|
|
112
114
|
auto: "跟随系统",
|
|
113
|
-
themeColor: "
|
|
115
|
+
themeColor: "强调色",
|
|
114
116
|
custom: "自定义",
|
|
117
|
+
accentName: {
|
|
118
|
+
blue: "蓝色",
|
|
119
|
+
indigo: "靛蓝",
|
|
120
|
+
purple: "紫色",
|
|
121
|
+
teal: "深青",
|
|
122
|
+
green: "墨绿",
|
|
123
|
+
graphite: "石墨",
|
|
124
|
+
custom: "自定义颜色"
|
|
125
|
+
},
|
|
126
|
+
accentDemoButton: "主按钮",
|
|
127
|
+
accentDemoLink: "链接文字",
|
|
115
128
|
layout: "布局模式",
|
|
116
129
|
layoutVertical: "左侧菜单模式",
|
|
117
130
|
layoutVerticalMix: "左侧菜单混合模式",
|
|
@@ -119,7 +132,10 @@ const e = {
|
|
|
119
132
|
layoutHorizontal: "顶部菜单模式",
|
|
120
133
|
layoutTopHybridSidebarFirst: "顶部混合-侧边优先",
|
|
121
134
|
layoutTopHybridHeaderFirst: "顶部混合-顶部优先",
|
|
122
|
-
interface: "
|
|
135
|
+
interface: "界面",
|
|
136
|
+
formStyle: "表单形态",
|
|
137
|
+
formStyleModal: "弹窗",
|
|
138
|
+
formStyleDrawer: "抽屉",
|
|
123
139
|
showBreadcrumb: "显示面包屑",
|
|
124
140
|
showTabs: "显示多标签",
|
|
125
141
|
fixedHeader: "固定头部",
|
|
@@ -127,19 +143,17 @@ const e = {
|
|
|
127
143
|
transitionNone: "无",
|
|
128
144
|
transitionFade: "淡入淡出",
|
|
129
145
|
transitionFadeSlide: "滑动淡入",
|
|
130
|
-
grayscale: "灰色模式",
|
|
131
|
-
watermark: "水印",
|
|
132
|
-
watermarkText: "水印文案",
|
|
133
|
-
watermarkPlaceholder: "请输入水印文案",
|
|
134
|
-
formStyle: "表单形态",
|
|
135
|
-
formStyleModal: "弹窗",
|
|
136
|
-
formStyleDrawer: "抽屉",
|
|
137
146
|
resetConfirm: "确定恢复默认设置?",
|
|
138
147
|
copyConfig: "复制配置",
|
|
139
148
|
configCopied: "已复制当前配置(粘回 stores/app.ts 的 DEFAULTS 即为新默认)",
|
|
140
149
|
searchPlaceholder: "搜索菜单…",
|
|
141
150
|
searchEmpty: "无匹配菜单",
|
|
142
|
-
searchHint: "↑↓ 导航 · ↵ 进入 · Esc 关闭"
|
|
151
|
+
searchHint: "↑↓ 导航 · ↵ 进入 · Esc 关闭",
|
|
152
|
+
descBreadcrumb: "顶栏显示当前页面的层级",
|
|
153
|
+
descTabs: "保留已打开页面,可来回切换",
|
|
154
|
+
descFixedHeader: "顶栏固定并保持毛玻璃",
|
|
155
|
+
descPageTransition: "切换页面的过渡动画",
|
|
156
|
+
descCollapse: "隐藏侧栏,把宽度让给内容区"
|
|
143
157
|
},
|
|
144
158
|
tabs: {
|
|
145
159
|
refresh: "刷新",
|
|
@@ -201,9 +215,9 @@ const e = {
|
|
|
201
215
|
ssoDingtalk: "钉钉",
|
|
202
216
|
sso: "SSO",
|
|
203
217
|
ssoComingSoon: "第三方登录即将开放",
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
218
|
+
layoutLabel: "切换登录页布局",
|
|
219
|
+
layoutToSolo: "切换到单栏",
|
|
220
|
+
layoutToSplit: "切换到双栏"
|
|
207
221
|
},
|
|
208
222
|
module: {
|
|
209
223
|
choose: "选择应用",
|
|
@@ -228,6 +242,7 @@ const e = {
|
|
|
228
242
|
editTitle: "编辑应用",
|
|
229
243
|
deleteConfirm: "确定删除应用「{title}」?",
|
|
230
244
|
disableConfirm: "确定停用应用「{title}」?门户将不再显示该应用",
|
|
245
|
+
builtinNoDisable: "内置应用不可停用",
|
|
231
246
|
saved: "保存成功",
|
|
232
247
|
deleted: "已删除"
|
|
233
248
|
},
|
|
@@ -286,6 +301,140 @@ const e = {
|
|
|
286
301
|
saved: "保存成功",
|
|
287
302
|
deleted: "已删除"
|
|
288
303
|
},
|
|
304
|
+
// 内核种子菜单 / 应用标题(DefaultMenuSeed / DefaultModuleSeed)的译文;值 = 种子里的中文标题原文。
|
|
305
|
+
// 标题原文 → key 的映射表见 locales/kernelMenuTitles.ts。
|
|
306
|
+
menuTitle: {
|
|
307
|
+
module: {
|
|
308
|
+
system: "系统",
|
|
309
|
+
business: "业务中心"
|
|
310
|
+
},
|
|
311
|
+
catalog: {
|
|
312
|
+
org: "组织管理",
|
|
313
|
+
ops: "系统运维",
|
|
314
|
+
schedule: "任务调度",
|
|
315
|
+
audit: "日志审计",
|
|
316
|
+
ai: "AI 管理"
|
|
317
|
+
},
|
|
318
|
+
page: {
|
|
319
|
+
workbench: "工作台",
|
|
320
|
+
org: "机构管理",
|
|
321
|
+
position: "岗位管理",
|
|
322
|
+
user: "用户管理",
|
|
323
|
+
role: "角色管理",
|
|
324
|
+
config: "系统配置",
|
|
325
|
+
dict: "字典管理",
|
|
326
|
+
menu: "菜单管理",
|
|
327
|
+
module: "模块管理",
|
|
328
|
+
notice: "消息通知",
|
|
329
|
+
recycle: "回收站",
|
|
330
|
+
monitor: "服务器监控",
|
|
331
|
+
cache: "缓存管理",
|
|
332
|
+
apiDocs: "接口文档",
|
|
333
|
+
job: "定时任务",
|
|
334
|
+
jobLog: "执行记录",
|
|
335
|
+
jobMonitor: "任务监控",
|
|
336
|
+
loginLog: "登录日志",
|
|
337
|
+
opLog: "操作日志",
|
|
338
|
+
exceptionLog: "异常日志",
|
|
339
|
+
session: "在线会话",
|
|
340
|
+
file: "文件管理",
|
|
341
|
+
aiModel: "AI 模型",
|
|
342
|
+
aiUsage: "用量统计"
|
|
343
|
+
},
|
|
344
|
+
button: {
|
|
345
|
+
orgQuery: "机构-查询",
|
|
346
|
+
orgCreate: "机构-新增",
|
|
347
|
+
orgUpdate: "机构-更新",
|
|
348
|
+
orgDelete: "机构-删除",
|
|
349
|
+
orgCopy: "机构-复制",
|
|
350
|
+
positionQuery: "岗位-查询",
|
|
351
|
+
positionCreate: "岗位-新增",
|
|
352
|
+
positionUpdate: "岗位-更新",
|
|
353
|
+
positionDelete: "岗位-删除",
|
|
354
|
+
userQuery: "用户-查询",
|
|
355
|
+
userCreate: "用户-新增",
|
|
356
|
+
userUpdate: "用户-更新",
|
|
357
|
+
userDelete: "用户-删除",
|
|
358
|
+
userResetPassword: "用户-重置密码",
|
|
359
|
+
userToggle: "用户-启停",
|
|
360
|
+
userImport: "用户-导入",
|
|
361
|
+
userExport: "用户-导出",
|
|
362
|
+
roleQuery: "角色-查询",
|
|
363
|
+
roleCreate: "角色-新增",
|
|
364
|
+
roleUpdate: "角色-更新",
|
|
365
|
+
roleDelete: "角色-删除",
|
|
366
|
+
roleGrantMenus: "角色-授权菜单",
|
|
367
|
+
roleDataScope: "角色-数据范围",
|
|
368
|
+
roleGrantUsers: "角色-授权用户",
|
|
369
|
+
ping: "连通性探针",
|
|
370
|
+
configQuery: "配置-查询",
|
|
371
|
+
configCreate: "配置-新增",
|
|
372
|
+
configUpdate: "配置-更新",
|
|
373
|
+
configDelete: "配置-删除",
|
|
374
|
+
configUploadLogo: "配置-上传Logo",
|
|
375
|
+
sensitiveQuery: "高敏权限-查询",
|
|
376
|
+
sensitiveCreate: "高敏权限-新增",
|
|
377
|
+
sensitiveDelete: "高敏权限-删除",
|
|
378
|
+
mfaClear: "MFA-清除用户二因子",
|
|
379
|
+
dictTypeQuery: "字典类型-查询",
|
|
380
|
+
dictTypeCreate: "字典类型-新增",
|
|
381
|
+
dictTypeUpdate: "字典类型-更新",
|
|
382
|
+
dictTypeDelete: "字典类型-删除",
|
|
383
|
+
dictItemQuery: "字典项-查询",
|
|
384
|
+
dictItemCreate: "字典项-新增",
|
|
385
|
+
dictItemUpdate: "字典项-更新",
|
|
386
|
+
dictItemDelete: "字典项-删除",
|
|
387
|
+
menuQuery: "菜单-查询",
|
|
388
|
+
menuCreate: "菜单-新增",
|
|
389
|
+
menuUpdate: "菜单-更新",
|
|
390
|
+
menuDelete: "菜单-删除",
|
|
391
|
+
moduleQuery: "模块-查询",
|
|
392
|
+
moduleCreate: "模块-新增",
|
|
393
|
+
moduleUpdate: "模块-更新",
|
|
394
|
+
moduleDelete: "模块-删除",
|
|
395
|
+
noticeQuery: "通知-查询",
|
|
396
|
+
noticePublish: "通知-发布",
|
|
397
|
+
noticeDelete: "通知-删除",
|
|
398
|
+
recycleQuery: "回收站-查询",
|
|
399
|
+
recyclePurge: "回收站-彻底删除",
|
|
400
|
+
recycleRestore: "回收站-恢复",
|
|
401
|
+
monitorQuery: "服务器监控-查询",
|
|
402
|
+
cacheFlushAuth: "缓存-清授权",
|
|
403
|
+
cacheFlushDict: "缓存-清字典",
|
|
404
|
+
cacheFlushConfig: "缓存-清配置",
|
|
405
|
+
cacheRebuildPortal: "缓存-重建门户菜单",
|
|
406
|
+
apiDocsView: "接口文档-查看契约",
|
|
407
|
+
jobQuery: "任务-查询",
|
|
408
|
+
jobCreate: "任务-新增",
|
|
409
|
+
jobUpdate: "任务-更新",
|
|
410
|
+
jobDelete: "任务-删除",
|
|
411
|
+
jobToggle: "任务-启停",
|
|
412
|
+
jobRun: "任务-执行一次",
|
|
413
|
+
jobLogQuery: "记录-查询",
|
|
414
|
+
jobLogKill: "记录-终止",
|
|
415
|
+
jobLogClear: "记录-清空",
|
|
416
|
+
jobMonitorQuery: "监控-查询",
|
|
417
|
+
loginLogQuery: "登录日志-查询",
|
|
418
|
+
loginLogClear: "登录日志-清空",
|
|
419
|
+
opLogQuery: "操作日志-查询",
|
|
420
|
+
opLogClear: "操作日志-清空",
|
|
421
|
+
opLogExport: "操作日志-导出",
|
|
422
|
+
exceptionLogQuery: "异常日志-查询",
|
|
423
|
+
exceptionLogClear: "异常日志-清空",
|
|
424
|
+
sessionQuery: "在线会话-查询",
|
|
425
|
+
sessionKick: "强制下线",
|
|
426
|
+
fileQuery: "文件-查询",
|
|
427
|
+
fileUpload: "文件-上传",
|
|
428
|
+
fileDelete: "文件-删除",
|
|
429
|
+
fileDownload: "文件-下载",
|
|
430
|
+
aiProviderQuery: "AI 厂商-查询",
|
|
431
|
+
aiProviderCreate: "AI 厂商-新增",
|
|
432
|
+
aiProviderUpdate: "AI 厂商-更新",
|
|
433
|
+
aiProviderDelete: "AI 厂商-删除",
|
|
434
|
+
aiProviderTest: "AI 厂商-测试连接",
|
|
435
|
+
aiUsageQuery: "AI 用量-查询"
|
|
436
|
+
}
|
|
437
|
+
},
|
|
289
438
|
iconPicker: {
|
|
290
439
|
placeholder: "选择图标",
|
|
291
440
|
title: "选择图标",
|
|
@@ -308,9 +457,13 @@ const e = {
|
|
|
308
457
|
fixedNone: "取消固定",
|
|
309
458
|
expand: "展开",
|
|
310
459
|
collapse: "收起",
|
|
460
|
+
total: "共 {n} 条",
|
|
311
461
|
// TableZoomButton(表格铺满视口看宽表)
|
|
312
462
|
zoom: "放大",
|
|
313
|
-
zoomExit: "还原"
|
|
463
|
+
zoomExit: "还原",
|
|
464
|
+
// 搜索条件超出后端能力时的提示(见 utils/tableFilter.ts)
|
|
465
|
+
filterFallback: "部分搜索条件后端不支持(同一字段只能设一个条件;日期区间要用「大于等于」加「小于等于」,且连接),已按可识别的条件查询",
|
|
466
|
+
filterTruncated: "数据超过 10000 条,搜索只覆盖前 10000 条,请换更精确的条件"
|
|
314
467
|
},
|
|
315
468
|
workbench: {
|
|
316
469
|
welcome: "你好,{name}",
|
|
@@ -360,6 +513,8 @@ const e = {
|
|
|
360
513
|
passwordHint: "留空则自动生成随机密码(创建后显示一次)",
|
|
361
514
|
org: "归属机构",
|
|
362
515
|
allOrgs: "全部",
|
|
516
|
+
// 内容区较窄时机构树收进抽屉:工具栏按钮与抽屉标题
|
|
517
|
+
orgFilter: "机构",
|
|
363
518
|
orgPlaceholder: "选择机构(可空)",
|
|
364
519
|
position: "职位",
|
|
365
520
|
positionPlaceholder: "选择职位(可空)",
|
|
@@ -530,113 +685,344 @@ const e = {
|
|
|
530
685
|
deleteConfirm: "确定删除配置「{name}」?",
|
|
531
686
|
saved: "保存成功",
|
|
532
687
|
deleted: "已删除",
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
688
|
+
keyManagedBy: "该配置由「{tab}」页的表单管理,保存后请到那里修改。",
|
|
689
|
+
unsaved: "有 {n} 项修改未保存",
|
|
690
|
+
unsavedTab: "有未保存的修改",
|
|
691
|
+
discard: "放弃修改",
|
|
692
|
+
leaveTitle: "放弃未保存的修改?",
|
|
693
|
+
leaveConfirm: "配置中心还有未保存的修改,离开后会丢失。",
|
|
538
694
|
tab: {
|
|
539
|
-
|
|
695
|
+
brand: "品牌与登录页",
|
|
696
|
+
signin: "登录方式",
|
|
540
697
|
security: "安全策略",
|
|
541
|
-
|
|
542
|
-
|
|
698
|
+
watermark: "水印设置",
|
|
699
|
+
sensitive: "敏感操作",
|
|
700
|
+
upload: "文件上传",
|
|
543
701
|
job: "定时任务",
|
|
544
|
-
|
|
702
|
+
advanced: "高级设置"
|
|
703
|
+
},
|
|
704
|
+
brand: {
|
|
705
|
+
desc: "站点在浏览器标签、侧栏、页脚和登录页上的样子。",
|
|
706
|
+
preview: "实时预览",
|
|
707
|
+
previewAdmin: "后台",
|
|
708
|
+
previewLogin: "登录页",
|
|
709
|
+
groupSite: "站点",
|
|
710
|
+
groupLogin: "登录页",
|
|
711
|
+
copyrightPh: "留空则显示站点名称",
|
|
712
|
+
copyrightUrlHint: "填了之后页脚的版权文字可点击"
|
|
713
|
+
},
|
|
714
|
+
watermark: {
|
|
715
|
+
desc: "登录后的每个页面都会叠一层水印,登录页不显示。",
|
|
716
|
+
groupContent: "内容",
|
|
717
|
+
groupStyle: "样式",
|
|
718
|
+
enable: "启用水印",
|
|
719
|
+
enableHint: "在每个页面上叠一层半透明文字,截图外传时可追溯到人",
|
|
720
|
+
content: "水印内容",
|
|
721
|
+
contentHint: "每位用户印的是自己的信息,按下面的顺序排列",
|
|
722
|
+
contentEmpty: "一项都没选,水印不会显示",
|
|
723
|
+
field: {
|
|
724
|
+
name: "姓名",
|
|
725
|
+
account: "账号",
|
|
726
|
+
org: "机构",
|
|
727
|
+
phone: "手机尾号",
|
|
728
|
+
time: "当前时间",
|
|
729
|
+
text: "自定义文字"
|
|
730
|
+
},
|
|
731
|
+
text: "自定义文字",
|
|
732
|
+
textHint: "如「内部资料 严禁外传」,所有人都一样",
|
|
733
|
+
textPlaceholder: "最多 {max} 个字",
|
|
734
|
+
timeFormat: "时间格式",
|
|
735
|
+
layout: "排版",
|
|
736
|
+
layoutSingle: "单行",
|
|
737
|
+
layoutMulti: "多行",
|
|
738
|
+
fontSize: "字号",
|
|
739
|
+
opacity: "浓淡",
|
|
740
|
+
opacityHint: "越大越清楚,也越影响阅读",
|
|
741
|
+
rotate: "倾斜角度",
|
|
742
|
+
density: "疏密",
|
|
743
|
+
sparse: "疏",
|
|
744
|
+
normal: "适中",
|
|
745
|
+
dense: "密",
|
|
746
|
+
cross: "错位排列",
|
|
747
|
+
crossHint: "相邻两行错开半格,更难被裁掉"
|
|
748
|
+
},
|
|
749
|
+
logo: {
|
|
750
|
+
title: "Logo",
|
|
751
|
+
edit: "更换 Logo",
|
|
752
|
+
upload: "上传新图片…",
|
|
753
|
+
useUrl: "使用图片链接…",
|
|
754
|
+
remove: "移除,恢复默认",
|
|
755
|
+
help: "PNG / JPG / WEBP,裁成正方形,也用作浏览器标签图标",
|
|
756
|
+
fallback: "没有设置时使用内置 Logo。浏览器标签页图标也会跟着 Logo 变。",
|
|
757
|
+
badType: "只支持 PNG、JPG、WEBP 图片",
|
|
758
|
+
tooLarge: "图片不能超过 {mb} MB",
|
|
759
|
+
cropTitle: "裁剪新 Logo",
|
|
760
|
+
cropTip: "拖动或用方向键调整位置,滚轮、滑块或 +/- 缩放",
|
|
761
|
+
zoom: "缩放",
|
|
762
|
+
apply: "设为新 Logo",
|
|
763
|
+
cropFailed: "裁剪失败,请换一张图片",
|
|
764
|
+
badUrl: "请填写以 http:// 或 https:// 开头的地址,或以 / 开头的站内路径",
|
|
765
|
+
urlHint: "图片要能匿名访问,建议用正方形。"
|
|
766
|
+
},
|
|
767
|
+
advanced: {
|
|
768
|
+
desc: "没有归到以上分类的配置项,按键值直接编辑。以上页签里能改的键不会出现在这里。"
|
|
769
|
+
},
|
|
770
|
+
preview: {
|
|
771
|
+
minutes: "{n} 分钟",
|
|
772
|
+
hours: "{n} 小时",
|
|
773
|
+
days: "{n} 天",
|
|
774
|
+
off: "(未启用)",
|
|
775
|
+
sep: "、",
|
|
776
|
+
expand: "展开",
|
|
777
|
+
collapse: "收起",
|
|
778
|
+
req: { upper: "大写字母", lower: "小写字母", digit: "数字", special: "特殊字符" },
|
|
779
|
+
lock: "连续输错密码 {count} 次,账号锁定 {minutes} 分钟",
|
|
780
|
+
lockOff: "输错密码不会锁定账号",
|
|
781
|
+
captcha: "登录时要填验证码({type})",
|
|
782
|
+
totp: "可以用动态口令做二次验证",
|
|
783
|
+
totpSuper: "可以用动态口令做二次验证,超级管理员必须开启",
|
|
784
|
+
smsMfa: "绑定了手机号的用户登录时要做短信验证",
|
|
785
|
+
password: "密码至少 {min} 位,须含{reqs}",
|
|
786
|
+
passwordMin: "密码至少 {min} 位",
|
|
787
|
+
expire: "密码 {days} 天后必须修改",
|
|
788
|
+
noExpire: "密码永不过期",
|
|
789
|
+
history: "新密码不能和最近 {n} 次用过的相同",
|
|
790
|
+
historyOff: "新密码可以和旧密码相同",
|
|
791
|
+
firstChange: "管理员新建的账号首次登录必须修改密码",
|
|
792
|
+
firstChangeOff: "新建账号首次登录不用修改密码",
|
|
793
|
+
session: "访问令牌 {access} 后自动续期,最长 {refresh} 不用重新登录",
|
|
794
|
+
rateLimit: "同一来源每 {seconds} 秒最多 {permit} 次请求"
|
|
545
795
|
},
|
|
546
796
|
job: {
|
|
547
|
-
|
|
797
|
+
desc: "执行日志保留多久,任务失败时通知谁。",
|
|
798
|
+
preview: "实时预览 · 生效效果",
|
|
799
|
+
groupLog: "执行日志",
|
|
800
|
+
groupAlert: "失败告警",
|
|
801
|
+
logRetentionDays: "保留天数",
|
|
802
|
+
logRetentionHint: "更早的日志每天自动清理",
|
|
548
803
|
alertEmails: "告警邮箱",
|
|
549
|
-
alertEmailsHint: "
|
|
804
|
+
alertEmailsHint: "回车添加;不填则不发邮件",
|
|
805
|
+
previewRetention: "执行日志保留最近 {days} 天,更早的每天自动清理",
|
|
806
|
+
previewKeep: "保留 {days} 天",
|
|
807
|
+
previewAxisStart: "{days} 天前",
|
|
808
|
+
previewToday: "今天",
|
|
809
|
+
previewTo: "收件人",
|
|
810
|
+
previewSubject: "主题",
|
|
811
|
+
previewSubjectText: "[{site}] 定时任务执行失败:日报汇总",
|
|
812
|
+
previewBody: "任务「日报汇总」在 02:00 执行失败,已重试 3 次。",
|
|
813
|
+
previewError: "数据库连接超时 (30s)",
|
|
814
|
+
previewNoAlert: "任务失败时不发邮件,只记录在执行日志里"
|
|
550
815
|
},
|
|
551
816
|
externalAuth: {
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
817
|
+
preview: "实时预览 · 登录框",
|
|
818
|
+
previewOther: "其他登录方式",
|
|
819
|
+
hint: "登录页上出现哪些登录入口。第三方的连接信息在各自的「设置」里填写,加密保存。",
|
|
820
|
+
groupLocal: "本地账号",
|
|
821
|
+
groupThird: "第三方",
|
|
822
|
+
password: "账号密码",
|
|
823
|
+
passwordHint: "始终可用",
|
|
824
|
+
smsHint: "用手机号和短信验证码登录",
|
|
825
|
+
state: {
|
|
826
|
+
notInstalled: "未安装",
|
|
827
|
+
unconfigured: "未配置",
|
|
828
|
+
configured: "已配置"
|
|
829
|
+
},
|
|
830
|
+
settings: "设置",
|
|
831
|
+
addOidc: "添加 OIDC",
|
|
832
|
+
needPackage: "需先在服务器安装 {pkg} 包",
|
|
833
|
+
codeRegistered: "由代码注册,不在此处配置",
|
|
562
834
|
linkByAccount: "按账号自动关联",
|
|
835
|
+
linkByAccountHint: "账号相同的人首次登录时自动绑定本地账号,打开时会二次确认",
|
|
563
836
|
linkByAccountConfirmTitle: "打开按账号自动关联?",
|
|
564
|
-
linkByAccountConfirm: "{name}账号与本地账号完全相同的人,首次从{name}登录时会自动绑定到该本地账号并直接登录;超级管理员、已停用账号、已绑过{name}的账号除外。请先确认两边账号是同一批人,比如本地账号就是从{name}同步来的。"
|
|
837
|
+
linkByAccountConfirm: "{name}账号与本地账号完全相同的人,首次从{name}登录时会自动绑定到该本地账号并直接登录;超级管理员、已停用账号、已绑过{name}的账号除外。请先确认两边账号是同一批人,比如本地账号就是从{name}同步来的。",
|
|
838
|
+
field: {
|
|
839
|
+
displayName: "显示名",
|
|
840
|
+
code: "标识",
|
|
841
|
+
corpId: "企业 ID",
|
|
842
|
+
agentId: "应用 AgentId",
|
|
843
|
+
corpSecret: "应用 Secret",
|
|
844
|
+
appKey: "AppKey",
|
|
845
|
+
appSecret: "AppSecret",
|
|
846
|
+
clientId: "Client ID",
|
|
847
|
+
clientSecret: "Client Secret",
|
|
848
|
+
appId: "AppId",
|
|
849
|
+
authority: "Authority",
|
|
850
|
+
scopes: "Scopes",
|
|
851
|
+
usePkce: "使用 PKCE"
|
|
852
|
+
},
|
|
853
|
+
sheet: {
|
|
854
|
+
title: "{name} 登录设置",
|
|
855
|
+
addOidc: "添加 OIDC",
|
|
856
|
+
oidcHint: "标准 OpenID Connect 身份源",
|
|
857
|
+
secretNote: "密钥加密保存,保存后不显示明文",
|
|
858
|
+
namePlaceholder: "如 公司 SSO",
|
|
859
|
+
codePlaceholder: "小写字母、数字、连字符",
|
|
860
|
+
codeFixed: "保存后不可改",
|
|
861
|
+
codeTaken: "该标识已被使用",
|
|
862
|
+
secretPlaceholder: "粘贴密钥",
|
|
863
|
+
secretSet: "已配置",
|
|
864
|
+
keepSecret: "留空则不修改 · 当前 {now}",
|
|
865
|
+
secretRetype: "请重新输入密钥",
|
|
866
|
+
endpointMoved: "已修改 Authority:为防止把已保存的密钥发到新地址,请重新输入 Client Secret。",
|
|
867
|
+
ephemeralKey: "数据保护主密钥是临时密钥,暂时不能保存密钥。请先配置 SmartAdmin:Security:DataProtection:Key 并重启。",
|
|
868
|
+
ephemeralTitle: "主密钥是临时密钥,暂时不能保存",
|
|
869
|
+
callback: "回调地址",
|
|
870
|
+
callbackHint: "请把回调地址填到{name}的后台。",
|
|
871
|
+
idp: "身份源",
|
|
872
|
+
callbackMissing: "生产环境未配置 SmartAdmin:ExternalAuth:CallbackBaseUrl,无法算出回调地址。",
|
|
873
|
+
copyFailed: "复制失败,请手动选取",
|
|
874
|
+
test: "测试连接",
|
|
875
|
+
testing: "正在测试…",
|
|
876
|
+
saved: "已保存",
|
|
877
|
+
clear: "清除配置",
|
|
878
|
+
clearTitle: "清除「{name}」的配置?",
|
|
879
|
+
clearConfirm: "清除后该登录方式不可用,登录页不再显示它。用户已绑定的{name}账号不会被删除。",
|
|
880
|
+
cleared: "已清除"
|
|
881
|
+
},
|
|
882
|
+
check: {
|
|
883
|
+
reachable: "连通性",
|
|
884
|
+
credentials: "凭据",
|
|
885
|
+
agent: "AgentId",
|
|
886
|
+
appId: "AppId",
|
|
887
|
+
secret: "AppSecret",
|
|
888
|
+
discovery: "发现文档",
|
|
889
|
+
issuer: "issuer 一致性",
|
|
890
|
+
endpoints: "授权与令牌端点",
|
|
891
|
+
clientSecret: "Client Secret",
|
|
892
|
+
timeout: "超时",
|
|
893
|
+
error: "出错"
|
|
894
|
+
},
|
|
895
|
+
checkStatus: {
|
|
896
|
+
ok: "通过",
|
|
897
|
+
failed: "失败",
|
|
898
|
+
skipped: "未验证"
|
|
899
|
+
}
|
|
565
900
|
},
|
|
566
901
|
base: {
|
|
567
902
|
siteTitle: "站点标题",
|
|
568
|
-
|
|
569
|
-
siteSubtitle: "登录副标题",
|
|
903
|
+
siteSubtitle: "副标题",
|
|
570
904
|
copyright: "版权信息",
|
|
571
905
|
copyrightUrl: "版权链接"
|
|
572
906
|
},
|
|
907
|
+
login: {
|
|
908
|
+
language: "登录页语言",
|
|
909
|
+
localeZh: "中文",
|
|
910
|
+
localeEn: "English",
|
|
911
|
+
showFeatures: "显示亮点",
|
|
912
|
+
headline: "主标题",
|
|
913
|
+
headlinePlaceholder: "留空使用内置主标题",
|
|
914
|
+
highlight: "强调词",
|
|
915
|
+
highlightPlaceholder: "主标题中需要强调色的词",
|
|
916
|
+
highlightHint: "主标题里用强调色显示的词",
|
|
917
|
+
features: "亮点",
|
|
918
|
+
featuresPlaceholder: "一行一条,最多 5 条",
|
|
919
|
+
featuresHint: "一行一条,最多 5 条",
|
|
920
|
+
highlightMissing: "主标题里没有这个词,会按普通标题显示",
|
|
921
|
+
tooManyFeatures: "最多只能配置 5 条亮点"
|
|
922
|
+
},
|
|
573
923
|
security: {
|
|
924
|
+
desc: "登录保护、密码规则、会话时长和请求限流,保存后立即生效。",
|
|
925
|
+
preview: "用户会遇到的规则",
|
|
926
|
+
groupLogin: "登录保护",
|
|
927
|
+
groupSession: "会话",
|
|
928
|
+
groupRate: "请求限流",
|
|
929
|
+
zeroNoLock: "0 表示不锁定",
|
|
930
|
+
zeroNever: "0 表示永不过期",
|
|
931
|
+
zeroOff: "0 表示不限制",
|
|
932
|
+
unit: { times: "次", minutes: "分钟", days: "天", seconds: "秒", chars: "位" },
|
|
933
|
+
tryLabel: "试填密码",
|
|
934
|
+
tryMin: "至少 {n} 位",
|
|
935
|
+
tryPass: "可以使用",
|
|
936
|
+
tryFail: "不符合要求",
|
|
574
937
|
loginLock: {
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
lockMinutes: "锁定时长(分钟)"
|
|
938
|
+
maxFailCount: "连续输错锁定",
|
|
939
|
+
lockMinutes: "锁定时长"
|
|
578
940
|
},
|
|
579
941
|
password: {
|
|
580
|
-
title: "
|
|
942
|
+
title: "密码",
|
|
581
943
|
minLength: "最小长度",
|
|
944
|
+
mustContain: "必须包含",
|
|
945
|
+
chipUpper: "A-Z",
|
|
946
|
+
chipLower: "a-z",
|
|
947
|
+
chipDigit: "0-9",
|
|
948
|
+
// @ 在 vue-i18n 里是链接语法,要用字面量插值转义
|
|
949
|
+
chipSpecial: "#{'@'}!",
|
|
582
950
|
requireUpper: "须含大写字母",
|
|
583
951
|
requireLower: "须含小写字母",
|
|
584
952
|
requireDigit: "须含数字",
|
|
585
953
|
requireSpecial: "须含特殊字符",
|
|
586
|
-
expireDays: "
|
|
587
|
-
historyCount: "
|
|
954
|
+
expireDays: "有效期",
|
|
955
|
+
historyCount: "不能与最近几次重复",
|
|
956
|
+
forceChangeOnFirstLogin: "首次登录须改密码",
|
|
957
|
+
forceChangeOnFirstLoginHint: "只影响之后新建的账号;重置密码仍须改"
|
|
588
958
|
},
|
|
589
959
|
session: {
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
refreshMinutes: "刷新令牌(分钟)"
|
|
960
|
+
accessMinutes: "访问令牌有效期",
|
|
961
|
+
refreshMinutes: "最长免登录"
|
|
593
962
|
},
|
|
594
963
|
captcha: {
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
types: { char: "字符", path: "描边(更抗爬)", math: "算术" }
|
|
964
|
+
enabled: "登录验证码",
|
|
965
|
+
type: "类型",
|
|
966
|
+
types: { char: "字符", path: "描边", math: "算术" }
|
|
599
967
|
},
|
|
600
968
|
totp: {
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
requireForSuperAdmin: "超管必须动态口令",
|
|
969
|
+
enabled: "动态口令(TOTP)",
|
|
970
|
+
requireForSuperAdmin: "超级管理员必须使用",
|
|
604
971
|
hint: "与登录验证码一样可即时开关。开启后,用户管理里的「强制动态口令」才会在登录时生效;用户可在账号安全中自助绑定。"
|
|
605
972
|
},
|
|
606
973
|
sms: {
|
|
607
|
-
title: "短信验证",
|
|
608
974
|
hint: "二次验证仅对绑定了手机号的用户生效;开发环境验证码打印在后端日志,生产需注册真实短信通道(ISmsSender)。"
|
|
609
975
|
},
|
|
610
|
-
mfa: { enabled: "
|
|
611
|
-
smsLogin: { enabled: "
|
|
976
|
+
mfa: { enabled: "短信二次验证" },
|
|
977
|
+
smsLogin: { enabled: "短信验证码登录" },
|
|
612
978
|
rateLimit: {
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
authPermitPerWindow: "认证端点每窗口请求数"
|
|
979
|
+
enabled: "启用",
|
|
980
|
+
windowSeconds: "统计窗口",
|
|
981
|
+
permitPerWindow: "每个来源最多",
|
|
982
|
+
authPermitPerWindow: "登录接口最多"
|
|
618
983
|
},
|
|
619
984
|
highSens: {
|
|
620
|
-
title: "高敏感权限(自定义追加)",
|
|
621
|
-
hint: "内核默认高敏权限不可删除;下方仅可追加/删除消费者自定义权限码。写操作需近期再认证。",
|
|
622
985
|
code: "权限码",
|
|
623
986
|
remark: "备注",
|
|
624
|
-
codePh: "如 POST:/api/v1/biz/order",
|
|
625
|
-
remarkPh: "
|
|
987
|
+
codePh: "如 POST:/api/v1/biz/order/refund",
|
|
988
|
+
remarkPh: "备注(可选)",
|
|
626
989
|
codeRequired: "请填写权限码"
|
|
627
990
|
}
|
|
628
991
|
},
|
|
992
|
+
sensitive: {
|
|
993
|
+
desc: "执行这些接口前,要求用户再次验证身份。内置的不能删,可以追加自己的业务接口;增删即时生效。",
|
|
994
|
+
preview: "用户执行时看到的验证框",
|
|
995
|
+
previewTip: "点左侧任一行切换",
|
|
996
|
+
previewDoing: "你正在执行",
|
|
997
|
+
method: "方法",
|
|
998
|
+
path: "接口",
|
|
999
|
+
builtin: "内置",
|
|
1000
|
+
added: "已添加,立即生效",
|
|
1001
|
+
removed: "已删除,立即生效",
|
|
1002
|
+
removeConfirm: "删除「{code}」?删除后执行它不再需要验证身份。"
|
|
1003
|
+
},
|
|
629
1004
|
upload: {
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
1005
|
+
desc: "全站上传文件的大小和格式限制,保存后立即生效。",
|
|
1006
|
+
preview: "实时预览 · 用户看到的上传框",
|
|
1007
|
+
previewDrop: "点击或拖拽文件到这里",
|
|
1008
|
+
previewLimit: "支持 {exts},单个文件不超过 {mb} MB",
|
|
1009
|
+
previewDefault: "服务端默认格式",
|
|
1010
|
+
groupLimit: "限制",
|
|
1011
|
+
maxSizeMb: "单个文件上限",
|
|
1012
|
+
allowedExtensions: "允许的格式",
|
|
1013
|
+
extTip: "留空则使用服务端默认",
|
|
1014
|
+
quickAdd: "快速添加",
|
|
1015
|
+
preset: { images: "图片", docs: "文档", archives: "压缩包", clear: "清空" },
|
|
1016
|
+
fileOk: "可以上传",
|
|
1017
|
+
fileBadExt: "不支持 {ext}",
|
|
1018
|
+
fileTooBig: "超过 {mb} MB",
|
|
1019
|
+
fileDefault: "按服务端默认格式判断"
|
|
635
1020
|
}
|
|
636
1021
|
},
|
|
637
1022
|
// 字典管理(主从:左类型 / 右字典项)
|
|
638
1023
|
dict: {
|
|
639
1024
|
title: "字典管理",
|
|
1025
|
+
typeTitle: "字典类型",
|
|
640
1026
|
code: "类型编码",
|
|
641
1027
|
name: "类型名称",
|
|
642
1028
|
searchName: "搜索名称",
|
|
@@ -650,7 +1036,7 @@ const e = {
|
|
|
650
1036
|
typeSaved: "保存成功",
|
|
651
1037
|
typeDeleted: "已删除",
|
|
652
1038
|
itemsOf: "「{name}」的字典项",
|
|
653
|
-
selectTypeHint: "
|
|
1039
|
+
selectTypeHint: "请选择上方字典类型以管理其字典项",
|
|
654
1040
|
itemLabel: "显示文本",
|
|
655
1041
|
itemValue: "值",
|
|
656
1042
|
itemLabelRequired: "请输入显示文本",
|
|
@@ -660,7 +1046,10 @@ const e = {
|
|
|
660
1046
|
editItemTitle: "编辑字典项",
|
|
661
1047
|
itemDeleteConfirm: "确定删除字典项「{label}」?",
|
|
662
1048
|
itemSaved: "保存成功",
|
|
663
|
-
itemDeleted: "已删除"
|
|
1049
|
+
itemDeleted: "已删除",
|
|
1050
|
+
codeImmutable: "编码创建后不可修改",
|
|
1051
|
+
itemsSheetTitle: "字典项",
|
|
1052
|
+
selectItem: "选择"
|
|
664
1053
|
},
|
|
665
1054
|
// 机构管理(树表 + 上级机构树选)
|
|
666
1055
|
org: {
|
|
@@ -675,6 +1064,7 @@ const e = {
|
|
|
675
1064
|
parentPlaceholder: "选择上级机构(留空=顶级)",
|
|
676
1065
|
nameRequired: "请输入机构名称",
|
|
677
1066
|
codePlaceholder: "不填则自动生成",
|
|
1067
|
+
codeImmutableHint: "编码创建后不可修改",
|
|
678
1068
|
addChild: "新增下级",
|
|
679
1069
|
addTitle: "新增机构",
|
|
680
1070
|
editTitle: "编辑机构",
|
|
@@ -817,6 +1207,7 @@ const e = {
|
|
|
817
1207
|
name: "岗位名称",
|
|
818
1208
|
sort: "排序",
|
|
819
1209
|
codePlaceholder: "不填则自动生成",
|
|
1210
|
+
codeImmutableHint: "编码创建后不可修改",
|
|
820
1211
|
nameRequired: "请输入岗位名称",
|
|
821
1212
|
addTitle: "新增岗位",
|
|
822
1213
|
editTitle: "编辑岗位",
|
|
@@ -848,10 +1239,17 @@ const e = {
|
|
|
848
1239
|
deleted: "已删除",
|
|
849
1240
|
grantMenus: "授权菜单",
|
|
850
1241
|
grantSaved: "授权已保存",
|
|
851
|
-
catalog: "一级目录",
|
|
852
|
-
menuCol: "菜单",
|
|
853
|
-
buttonsCol: "按钮授权",
|
|
854
1242
|
apiOnlyRow: "接口权限(无页面)",
|
|
1243
|
+
grantSearch: "搜索目录、页面或按钮",
|
|
1244
|
+
grantSearchClear: "清除搜索",
|
|
1245
|
+
grantSelectAll: "全选「{name}」",
|
|
1246
|
+
noButtons: "无按钮权限",
|
|
1247
|
+
grantNoMatch: "没有匹配的权限",
|
|
1248
|
+
grantNoMatchElsewhere: "其他应用中有 {count} 个目录匹配,请切换上方应用查看",
|
|
1249
|
+
grantNoMenus: "该应用下暂无菜单",
|
|
1250
|
+
grantSummary: "已授权 {on} / {total} 项",
|
|
1251
|
+
grantSummarySplit: "页面 {pages} · 按钮 {buttons}",
|
|
1252
|
+
grantUnsaved: "有未保存的修改",
|
|
855
1253
|
dataScope: "数据范围",
|
|
856
1254
|
scopeType: "范围类型",
|
|
857
1255
|
customOrgs: "自定义机构",
|
|
@@ -1035,6 +1433,7 @@ const e = {
|
|
|
1035
1433
|
killed: "已请求终止",
|
|
1036
1434
|
clear: "清空记录",
|
|
1037
1435
|
clearTitle: "清空执行记录",
|
|
1436
|
+
clearRange: "范围",
|
|
1038
1437
|
clearAll: "全部记录",
|
|
1039
1438
|
beforeDays: "{n} 天以前的记录",
|
|
1040
1439
|
clearHint: "运行中的记录一律保留;此为硬删除,不可恢复。",
|
|
@@ -1123,6 +1522,7 @@ const e = {
|
|
|
1123
1522
|
enabled: "启用",
|
|
1124
1523
|
disabled: "已停用",
|
|
1125
1524
|
pendingConfigTip: "尚未配置 API Key,保存前请填写",
|
|
1525
|
+
pendingConfig: "待配置",
|
|
1126
1526
|
provider: {
|
|
1127
1527
|
code: "厂商编码",
|
|
1128
1528
|
codePlaceholder: "唯一编码,创建后不可变",
|
|
@@ -1164,7 +1564,8 @@ const e = {
|
|
|
1164
1564
|
defaultTag: "默认",
|
|
1165
1565
|
atLeastOne: "至少保留一个模型",
|
|
1166
1566
|
duplicateName: "模型名重复",
|
|
1167
|
-
noDefault: "未设置默认模型"
|
|
1567
|
+
noDefault: "未设置默认模型",
|
|
1568
|
+
defaultUniqueHint: "默认模型全库唯一:在此设置默认并保存后,其它厂商原有的默认模型会被取消。"
|
|
1168
1569
|
},
|
|
1169
1570
|
test: {
|
|
1170
1571
|
action: "测试连接",
|
|
@@ -1336,7 +1737,14 @@ const e = {
|
|
|
1336
1737
|
csrfInvalid: "请求校验失败,请刷新页面后重试",
|
|
1337
1738
|
reauthRequired: "此操作需要再次验证身份",
|
|
1338
1739
|
mfaBindPasswordRequired: "绑定动态口令前请先验证当前密码",
|
|
1339
|
-
apiKeyInvalid: "API Key 缺失或无效"
|
|
1740
|
+
apiKeyInvalid: "API Key 缺失或无效",
|
|
1741
|
+
externalAuthTypeNotFound: "登录方式类型不存在,或对应的扩展包尚未安装",
|
|
1742
|
+
externalAuthCodeExists: "该标识已被占用",
|
|
1743
|
+
externalAuthCodeInvalid: "标识格式不合法,或与内置登录方式的标识冲突",
|
|
1744
|
+
externalAuthFieldMissing: "请填写必填项:{field}",
|
|
1745
|
+
externalAuthDataProtectionKeyMissing: "尚未配置数据保护主密钥,无法安全保存第三方密钥。请先配置 SmartAdmin:Security:DataProtection:Key",
|
|
1746
|
+
externalAuthProviderNotFound: "该登录方式尚未配置",
|
|
1747
|
+
externalAuthEndpointBlocked: "该地址被出站访问围栏拒绝,请检查协议、主机与网段"
|
|
1340
1748
|
},
|
|
1341
1749
|
perm: {
|
|
1342
1750
|
denied: "无权限访问",
|
|
@@ -1505,7 +1913,8 @@ const e = {
|
|
|
1505
1913
|
fallbackLink: "没有自动打开?点此手动打开",
|
|
1506
1914
|
copyToken: "复制我的接口令牌",
|
|
1507
1915
|
copyTokenHint: "在新标签页里点右上角 Authentication → Bearer,粘贴这里复制的令牌",
|
|
1508
|
-
tokenCopied: "已复制"
|
|
1916
|
+
tokenCopied: "已复制",
|
|
1917
|
+
tokenWarn: "令牌是当前登录会话的凭据,等同于你的身份,请勿分享给他人。"
|
|
1509
1918
|
},
|
|
1510
1919
|
// 用户导入导出:列标题 + 文件名(与 UserImportProfile / UserExportProfile 的列一一对应)
|
|
1511
1920
|
userExport: {
|