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
|
@@ -1,121 +1,137 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useMessage as
|
|
3
|
-
import { SmartTable as
|
|
4
|
-
import { useI18n as
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import { useConfirm as
|
|
10
|
-
import { buildRoutesForModule as
|
|
11
|
-
import { useAuthStore as
|
|
12
|
-
import { moduleApi as
|
|
13
|
-
import { translateError as
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
|
|
1
|
+
import { defineComponent as pe, ref as p, shallowRef as A, onMounted as fe, computed as f, watch as ve, h as o, resolveDirective as he, openBlock as G, createElementBlock as ye, createVNode as v, unref as s, withCtx as h, createTextVNode as K, toDisplayString as V, withDirectives as ge, createBlock as we, toRaw as ke } from "vue";
|
|
2
|
+
import { useMessage as be, NSpace as J, NTag as Q, NButton as w, NDropdown as _e, NSelect as xe } from "naive-ui";
|
|
3
|
+
import { SmartTable as Te } from "smart-naive-table";
|
|
4
|
+
import { useI18n as Ie } from "vue-i18n";
|
|
5
|
+
import c from "../../../components/AppIcon.vue.js";
|
|
6
|
+
import Me from "../../../components/StatusSwitch/index.vue.js";
|
|
7
|
+
import Ce from "./components/ButtonManager.vue.js";
|
|
8
|
+
import ze from "./components/MenuFormModal.vue.js";
|
|
9
|
+
import { useConfirm as Se } from "../../../composables/useConfirm.js";
|
|
10
|
+
import { buildRoutesForModule as Ae } from "../../../composables/useAuthMenu.js";
|
|
11
|
+
import { useAuthStore as Ee } from "../../../stores/auth.js";
|
|
12
|
+
import { moduleApi as Pe, menuApi as x } from "../../../api/index.js";
|
|
13
|
+
import { translateError as Be } from "../../../utils/error.js";
|
|
14
|
+
import { SEARCH_ACTIONS as E, deriveHeaderFilters as Re } from "../../../utils/tableFilter.js";
|
|
15
|
+
import { TABLE_MIN_ROW_HEIGHT as Ne, TABLE_TOOLBAR as Oe } from "../../../utils/tableToolbar.js";
|
|
16
|
+
import { expandableIds as X } from "../../../utils/tree.js";
|
|
17
|
+
import { filterTreeByParams as De, hasTreeCondition as Le } from "../../../utils/treeFilter.js";
|
|
18
|
+
import { toMenuInput as Fe, MenuType as k, splitPermission as Ue } from "../../../types/menu.js";
|
|
19
|
+
import { lineIcon as $e } from "../../../utils/menuIcon.js";
|
|
20
|
+
import { translateMenuTitle as P } from "../../../locales/menuTitle.js";
|
|
21
|
+
const He = { class: "view fill-page" }, b = 0, Y = -1, dt = /* @__PURE__ */ pe({
|
|
17
22
|
__name: "index",
|
|
18
|
-
setup(
|
|
19
|
-
const { t: n } =
|
|
20
|
-
async function
|
|
21
|
-
|
|
23
|
+
setup(qe) {
|
|
24
|
+
const { t: n } = Ie(), Z = be(), { confirm: ee } = Se(), d = Ee(), T = p(!1), y = A([]), g = A([]), a = p(d.currentModuleId ?? b), B = p([]);
|
|
25
|
+
async function te() {
|
|
26
|
+
T.value = !0;
|
|
22
27
|
try {
|
|
23
|
-
|
|
28
|
+
y.value = await x.tree();
|
|
24
29
|
} catch (e) {
|
|
25
|
-
|
|
30
|
+
Z.error(Be(e));
|
|
26
31
|
} finally {
|
|
27
|
-
|
|
32
|
+
T.value = !1;
|
|
28
33
|
}
|
|
29
34
|
}
|
|
30
|
-
async function
|
|
31
|
-
if (
|
|
35
|
+
async function R() {
|
|
36
|
+
if (d.currentModuleId)
|
|
32
37
|
try {
|
|
33
|
-
await
|
|
38
|
+
await Ae(d.currentModuleId);
|
|
34
39
|
} catch {
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
|
-
|
|
42
|
+
fe(async () => {
|
|
38
43
|
var e;
|
|
39
|
-
await _();
|
|
40
44
|
try {
|
|
41
|
-
g.value = await
|
|
45
|
+
g.value = await Pe.list(), N.value.some((t) => t.value === a.value) || (a.value = ((e = g.value[0]) == null ? void 0 : e.id) ?? b);
|
|
42
46
|
} catch {
|
|
43
47
|
}
|
|
44
48
|
try {
|
|
45
|
-
B.value = await
|
|
49
|
+
B.value = await x.routes();
|
|
46
50
|
} catch {
|
|
47
51
|
}
|
|
48
52
|
});
|
|
49
|
-
const
|
|
50
|
-
{ label:
|
|
51
|
-
|
|
53
|
+
const ne = (e) => e === k.Catalog ? n("menu.typeCatalog") : e === k.Menu ? n("menu.typeMenu") : n("menu.typeButton"), oe = (e) => e === k.Catalog ? "info" : "success", le = f(
|
|
54
|
+
() => g.value.map((e) => ({ label: P(e.title), value: e.id }))
|
|
55
|
+
), N = f(() => [
|
|
56
|
+
{ label: n("menu.moduleAll"), value: Y },
|
|
57
|
+
...le.value,
|
|
52
58
|
{ label: n("menu.moduleUnassigned"), value: b }
|
|
53
59
|
]);
|
|
54
|
-
function
|
|
55
|
-
return e.filter((t) => t.type !==
|
|
60
|
+
function O(e) {
|
|
61
|
+
return e.filter((t) => t.type !== k.Button).map((t) => ({ ...t, children: O(t.children) }));
|
|
56
62
|
}
|
|
57
|
-
const
|
|
58
|
-
() =>
|
|
59
|
-
|
|
60
|
-
(e) =>
|
|
63
|
+
const D = f(
|
|
64
|
+
() => O(
|
|
65
|
+
y.value.filter(
|
|
66
|
+
(e) => a.value === Y ? !0 : a.value === b ? e.moduleId == null : e.moduleId === a.value
|
|
61
67
|
)
|
|
62
68
|
)
|
|
63
|
-
),
|
|
69
|
+
), L = f(() => {
|
|
64
70
|
const e = /* @__PURE__ */ new Map(), t = (l) => {
|
|
65
|
-
for (const
|
|
66
|
-
const
|
|
67
|
-
e.set(
|
|
68
|
-
count:
|
|
69
|
-
perms:
|
|
70
|
-
}), t(
|
|
71
|
+
for (const i of l) {
|
|
72
|
+
const r = i.children.filter((u) => u.type === k.Button);
|
|
73
|
+
e.set(i.id, {
|
|
74
|
+
count: r.length,
|
|
75
|
+
perms: r.flatMap((u) => Ue(u.permission)).join(" ").toLowerCase()
|
|
76
|
+
}), t(i.children);
|
|
71
77
|
}
|
|
72
78
|
};
|
|
73
|
-
return t(
|
|
74
|
-
}),
|
|
75
|
-
|
|
76
|
-
return e ?
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
79
|
+
return t(y.value), e;
|
|
80
|
+
}), F = p(), I = () => {
|
|
81
|
+
var e;
|
|
82
|
+
return (e = F.value) == null ? void 0 : e.refresh();
|
|
83
|
+
}, U = {
|
|
84
|
+
// 英文界面下表里显示的是译名,搜索要两边都认(库里存的中文原文 + 当前语言的显示名)。
|
|
85
|
+
title: (e) => `${e.title} ${P(e.title, e.path || void 0)}`,
|
|
86
|
+
path: (e) => e.path,
|
|
87
|
+
permission: (e) => {
|
|
88
|
+
var t;
|
|
89
|
+
return (t = L.value.get(e.id)) == null ? void 0 : t.perms;
|
|
90
|
+
}
|
|
91
|
+
}, $ = /* @__PURE__ */ new WeakMap(), ie = async (e) => {
|
|
92
|
+
await te();
|
|
93
|
+
const t = De(D.value, e, U);
|
|
94
|
+
return $.set(t, Le(e, U)), { items: t, total: t.length };
|
|
95
|
+
}, m = p([]), M = A([]);
|
|
96
|
+
let C = !1;
|
|
97
|
+
function re(e) {
|
|
98
|
+
M.value = e;
|
|
99
|
+
const t = $.get(ke(e)) ?? !1;
|
|
100
|
+
t ? m.value = X(e) : C && (m.value = []), C = t;
|
|
101
|
+
}
|
|
102
|
+
ve(a, () => {
|
|
103
|
+
C || (m.value = []), I();
|
|
88
104
|
});
|
|
89
|
-
const z =
|
|
105
|
+
const z = f(() => m.value.length > 0), ae = () => m.value = z.value ? [] : X(M.value), se = f(
|
|
90
106
|
() => {
|
|
91
107
|
var e;
|
|
92
|
-
return
|
|
108
|
+
return a.value === b ? void 0 : ((e = g.value.find((t) => t.id === a.value)) == null ? void 0 : e.apiPrefix) ?? void 0;
|
|
93
109
|
}
|
|
94
|
-
),
|
|
110
|
+
), _ = p(null), H = p(null), ue = (e) => {
|
|
95
111
|
var t;
|
|
96
|
-
return (t =
|
|
97
|
-
},
|
|
112
|
+
return (t = H.value) == null ? void 0 : t.open({ id: e.id, title: e.title });
|
|
113
|
+
}, S = () => Promise.all([I(), R()]), de = (e) => ee({
|
|
98
114
|
content: n("menu.deleteConfirm", { title: e.title }),
|
|
99
115
|
type: "error",
|
|
100
|
-
action: () =>
|
|
116
|
+
action: () => x.remove(e.id),
|
|
101
117
|
successMsg: n("menu.deleted")
|
|
102
118
|
}).then((t) => {
|
|
103
|
-
t &&
|
|
104
|
-
}),
|
|
119
|
+
t && S();
|
|
120
|
+
}), ce = ({ expanded: e }) => o(
|
|
105
121
|
"span",
|
|
106
122
|
{
|
|
107
|
-
style: `display:inline-flex;transition:transform .2s;transform:rotate(${e ? 90 : 0}deg)`
|
|
123
|
+
style: `display:inline-flex;transition:transform .2s var(--ease);transform:rotate(${e ? 90 : 0}deg)`
|
|
108
124
|
},
|
|
109
|
-
|
|
110
|
-
),
|
|
111
|
-
const e = /* @__PURE__ */ new Map(), t = (l,
|
|
112
|
-
l.forEach((
|
|
113
|
-
const
|
|
114
|
-
e.set(
|
|
125
|
+
o(c, { icon: "ph:caret-right", size: 14 })
|
|
126
|
+
), me = f(() => {
|
|
127
|
+
const e = /* @__PURE__ */ new Map(), t = (l, i) => {
|
|
128
|
+
l.forEach((r, u) => {
|
|
129
|
+
const j = i ? `${i}.${u + 1}` : String(u + 1);
|
|
130
|
+
e.set(r.id, j), t(r.children, j);
|
|
115
131
|
});
|
|
116
132
|
};
|
|
117
|
-
return t(
|
|
118
|
-
}),
|
|
133
|
+
return t(M.value, ""), e;
|
|
134
|
+
}), q = (e) => e ? o("span", { class: "mono muted" }, e) : o("span", { class: "faint" }, "—"), W = [
|
|
119
135
|
// 序号列是渲染 rowNoById 层级号的普通数据列,fixed:'left' 与标题列同锚 ——
|
|
120
136
|
// 不锚定的话,横向滚动时会滑到 fixed 的标题列底下,「这是哪一行」照样丢。
|
|
121
137
|
{
|
|
@@ -127,18 +143,19 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
127
143
|
hideInSetting: !0,
|
|
128
144
|
// 结构性列,不进列设置
|
|
129
145
|
render: (e) => {
|
|
130
|
-
const t =
|
|
146
|
+
const t = me.value.get(e.id);
|
|
131
147
|
if (!t) return null;
|
|
132
148
|
const l = t.lastIndexOf(".") + 1;
|
|
133
|
-
return
|
|
134
|
-
l ?
|
|
135
|
-
|
|
149
|
+
return o("span", { class: "row-no" }, [
|
|
150
|
+
l ? o("span", { class: "row-no__path" }, t.slice(0, l)) : null,
|
|
151
|
+
o("span", { class: "row-no__self" }, t.slice(l))
|
|
136
152
|
]);
|
|
137
153
|
}
|
|
138
154
|
},
|
|
139
155
|
{
|
|
140
156
|
title: () => n("menu.title"),
|
|
141
157
|
key: "title",
|
|
158
|
+
search: { actions: E.fuzzy },
|
|
142
159
|
align: "left",
|
|
143
160
|
// 树列左对齐,展开缩进才好读
|
|
144
161
|
// 展开箭头与每层 26px 缩进钉死在这一列。默认会落到「首个无 type 的列」= 序号列,
|
|
@@ -150,10 +167,10 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
150
167
|
// 横向滚动时不能丢失「这是哪一行」
|
|
151
168
|
render: (e) => (
|
|
152
169
|
// inline:必须行内 —— naive 的展开箭头是 inline-flex,默认块级 NSpace 会被挤到第二行。
|
|
153
|
-
|
|
154
|
-
e.title,
|
|
170
|
+
o(J, { inline: !0, align: "center", size: 6, wrapItem: !1 }, () => [
|
|
171
|
+
P(e.title, e.path || void 0),
|
|
155
172
|
// 「隐藏」是罕见状态(种子里的目录/页面全是显示),只在为真时才占视觉 —— 省掉一整列同一个词。
|
|
156
|
-
e.visible ? null :
|
|
173
|
+
e.visible ? null : o(Q, { size: "tiny", bordered: !1, type: "warning" }, () => n("common.hidden"))
|
|
157
174
|
])
|
|
158
175
|
)
|
|
159
176
|
},
|
|
@@ -163,17 +180,17 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
163
180
|
key: "icon",
|
|
164
181
|
width: 64,
|
|
165
182
|
align: "center",
|
|
166
|
-
render: (e) => e.icon ?
|
|
183
|
+
render: (e) => e.icon ? o(c, { icon: $e(e.icon), size: 18 }) : null
|
|
167
184
|
},
|
|
168
185
|
// 类型独占一列,不塞在标题里。按类型着色,目录/页面一眼可辨。
|
|
169
186
|
{
|
|
170
187
|
title: () => n("menu.type"),
|
|
171
188
|
key: "type",
|
|
172
189
|
width: 90,
|
|
173
|
-
render: (e) =>
|
|
174
|
-
|
|
175
|
-
{ size: "small", bordered: !1, type:
|
|
176
|
-
() =>
|
|
190
|
+
render: (e) => o(
|
|
191
|
+
Q,
|
|
192
|
+
{ size: "small", bordered: !1, type: oe(e.type) },
|
|
193
|
+
() => ne(e.type)
|
|
177
194
|
)
|
|
178
195
|
},
|
|
179
196
|
// 路由/组件路径:管理员核对菜单时真正要看的东西,直接列出,不必点开编辑弹窗。
|
|
@@ -185,7 +202,16 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
185
202
|
align: "left",
|
|
186
203
|
width: 160,
|
|
187
204
|
ellipsis: { tooltip: !0 },
|
|
188
|
-
render: (e) => e.path
|
|
205
|
+
render: (e) => q(e.path),
|
|
206
|
+
search: { actions: E.fuzzy }
|
|
207
|
+
},
|
|
208
|
+
// 权限码只作搜索项:表格里不设这一列(见上),但「这个权限码归哪个页面」得能搜到 ——
|
|
209
|
+
// 取值与匹配见 SEARCH_FIELDS.permission(查该节点按钮子节点的码)。
|
|
210
|
+
{
|
|
211
|
+
key: "permission",
|
|
212
|
+
title: () => n("menu.permission"),
|
|
213
|
+
hideInTable: !0,
|
|
214
|
+
search: { actions: E.fuzzy }
|
|
189
215
|
},
|
|
190
216
|
{
|
|
191
217
|
title: () => n("menu.component"),
|
|
@@ -193,7 +219,7 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
193
219
|
align: "left",
|
|
194
220
|
width: 180,
|
|
195
221
|
ellipsis: { tooltip: !0 },
|
|
196
|
-
render: (e) => e.component
|
|
222
|
+
render: (e) => q(e.component)
|
|
197
223
|
},
|
|
198
224
|
{
|
|
199
225
|
title: () => n("menu.buttons"),
|
|
@@ -201,38 +227,43 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
201
227
|
width: 140,
|
|
202
228
|
render: (e) => {
|
|
203
229
|
var l;
|
|
204
|
-
const t = ((l =
|
|
205
|
-
return
|
|
206
|
-
|
|
230
|
+
const t = ((l = L.value.get(e.id)) == null ? void 0 : l.count) ?? 0;
|
|
231
|
+
return d.hasPerm("POST:/api/v1/sys/menu/add") ? o(
|
|
232
|
+
w,
|
|
207
233
|
{
|
|
208
234
|
size: "small",
|
|
209
235
|
quaternary: !0,
|
|
210
236
|
type: t > 0 ? "primary" : void 0,
|
|
211
|
-
onClick: () =>
|
|
237
|
+
onClick: () => ue(e)
|
|
212
238
|
},
|
|
213
239
|
{
|
|
214
|
-
icon: () =>
|
|
240
|
+
icon: () => o(c, { icon: "ph:shield-check", size: 15 }),
|
|
215
241
|
default: () => n("menu.configPerms", { n: t })
|
|
216
242
|
}
|
|
217
243
|
) : null;
|
|
218
244
|
}
|
|
219
245
|
},
|
|
220
|
-
{
|
|
246
|
+
{
|
|
247
|
+
title: () => n("menu.sort"),
|
|
248
|
+
key: "sort",
|
|
249
|
+
width: 70,
|
|
250
|
+
render: (e) => o("span", { class: "num muted" }, e.sort)
|
|
251
|
+
},
|
|
221
252
|
{
|
|
222
253
|
title: () => n("common.status"),
|
|
223
254
|
key: "enabled",
|
|
224
255
|
width: 84,
|
|
225
|
-
render: (e) =>
|
|
256
|
+
render: (e) => o(Me, {
|
|
226
257
|
value: e.enabled,
|
|
227
|
-
disabled: !
|
|
258
|
+
disabled: !d.hasPerm("PUT:/api/v1/sys/menu/{id}"),
|
|
228
259
|
// 启停走全量 update,无更新权限则置灰
|
|
229
260
|
// 停用是一键隐藏整棵子树的重操作,先确认;启用无副作用,跳过确认(返回 null)。
|
|
230
261
|
confirm: (t) => t ? null : n("menu.disableConfirm", { title: e.title }),
|
|
231
|
-
request: (t) =>
|
|
262
|
+
request: (t) => x.update(e.id, { ...Fe(e), enabled: t }),
|
|
232
263
|
// 重拉而非往行对象上写:搜索态下的祖先行是 filterTree 的浅拷贝,写它不会回到源树(开关会弹回去)。
|
|
233
264
|
// StatusSwitch 是悲观更新(请求成功才 emit),重拉一次就是最终态。
|
|
234
265
|
"onUpdate:value": () => {
|
|
235
|
-
|
|
266
|
+
I(), R();
|
|
236
267
|
}
|
|
237
268
|
})
|
|
238
269
|
},
|
|
@@ -243,119 +274,121 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
243
274
|
key: "op",
|
|
244
275
|
width: 150,
|
|
245
276
|
fixed: "right",
|
|
246
|
-
render: (e) =>
|
|
247
|
-
const t = [
|
|
248
|
-
|
|
277
|
+
render: (e) => o(J, { size: 2, wrapItem: !1, justify: "center" }, () => {
|
|
278
|
+
const t = d.hasPerm("POST:/api/v1/sys/menu/add"), l = d.hasPerm("DELETE:/api/v1/sys/menu/{id}"), i = [
|
|
279
|
+
t && {
|
|
249
280
|
key: "addChild",
|
|
250
|
-
label: n("menu.addChild")
|
|
281
|
+
label: n("menu.addChild"),
|
|
282
|
+
icon: () => o(c, { icon: "ph:plus", size: 16 })
|
|
251
283
|
},
|
|
252
|
-
|
|
284
|
+
// 新增与删除之间一条分隔线;只剩一项时不画
|
|
285
|
+
t && l && { type: "divider", key: "divider" },
|
|
286
|
+
l && {
|
|
253
287
|
key: "delete",
|
|
254
|
-
label: n("common.delete")
|
|
288
|
+
label: n("common.delete"),
|
|
289
|
+
icon: () => o(c, { icon: "ph:trash", size: 16 }),
|
|
290
|
+
props: { style: "color: var(--err)" }
|
|
255
291
|
}
|
|
256
292
|
].filter(Boolean);
|
|
257
293
|
return [
|
|
258
|
-
|
|
259
|
-
|
|
294
|
+
d.hasPerm("PUT:/api/v1/sys/menu/{id}") ? o(
|
|
295
|
+
w,
|
|
260
296
|
{
|
|
261
297
|
size: "small",
|
|
262
298
|
quaternary: !0,
|
|
263
299
|
type: "primary",
|
|
264
300
|
onClick: () => {
|
|
265
|
-
var
|
|
266
|
-
return (
|
|
301
|
+
var r;
|
|
302
|
+
return (r = _.value) == null ? void 0 : r.openEdit(e);
|
|
267
303
|
}
|
|
268
304
|
},
|
|
269
305
|
() => n("common.edit")
|
|
270
306
|
) : null,
|
|
271
|
-
|
|
272
|
-
|
|
307
|
+
i.length ? o(
|
|
308
|
+
_e,
|
|
273
309
|
{
|
|
274
310
|
trigger: "click",
|
|
275
|
-
options:
|
|
276
|
-
onSelect: (
|
|
277
|
-
var
|
|
278
|
-
return
|
|
311
|
+
options: i,
|
|
312
|
+
onSelect: (r) => {
|
|
313
|
+
var u;
|
|
314
|
+
return r === "addChild" ? (u = _.value) == null ? void 0 : u.openAdd(e.id) : de(e);
|
|
279
315
|
}
|
|
280
316
|
},
|
|
281
|
-
() =>
|
|
317
|
+
() => o(
|
|
318
|
+
w,
|
|
319
|
+
{ size: "small", quaternary: !0, type: "primary", iconPlacement: "right" },
|
|
320
|
+
{
|
|
321
|
+
default: () => n("common.more"),
|
|
322
|
+
icon: () => o(c, { icon: "ph:caret-down", size: 12 })
|
|
323
|
+
}
|
|
324
|
+
)
|
|
282
325
|
) : null
|
|
283
326
|
];
|
|
284
327
|
})
|
|
285
328
|
}
|
|
286
329
|
];
|
|
287
|
-
return (e, t) => {
|
|
288
|
-
const l =
|
|
289
|
-
return
|
|
290
|
-
|
|
291
|
-
"
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
330
|
+
return Re(W), (e, t) => {
|
|
331
|
+
const l = he("auth");
|
|
332
|
+
return G(), ye("div", He, [
|
|
333
|
+
v(s(Te), {
|
|
334
|
+
ref_key: "tableRef",
|
|
335
|
+
ref: F,
|
|
336
|
+
columns: W,
|
|
337
|
+
fetcher: ie,
|
|
338
|
+
loading: T.value,
|
|
295
339
|
"row-key": "id",
|
|
296
340
|
pagination: !1,
|
|
341
|
+
search: { container: "table" },
|
|
342
|
+
toolbar: s(Oe),
|
|
297
343
|
"storage-key": "sys-menu",
|
|
298
344
|
indent: 26,
|
|
299
|
-
"
|
|
300
|
-
"
|
|
301
|
-
"
|
|
302
|
-
"
|
|
303
|
-
"
|
|
304
|
-
|
|
345
|
+
"fill-height": "",
|
|
346
|
+
"min-row-height": s(Ne),
|
|
347
|
+
"render-expand-icon": ce,
|
|
348
|
+
"expanded-row-keys": m.value,
|
|
349
|
+
"onUpdate:expandedRowKeys": t[2] || (t[2] = (i) => m.value = i),
|
|
350
|
+
onLoaded: re
|
|
305
351
|
}, {
|
|
306
|
-
toolbar:
|
|
307
|
-
|
|
308
|
-
value:
|
|
309
|
-
"onUpdate:value": t[0] || (t[0] = (
|
|
310
|
-
options:
|
|
352
|
+
toolbar: h(() => [
|
|
353
|
+
v(s(xe), {
|
|
354
|
+
value: a.value,
|
|
355
|
+
"onUpdate:value": t[0] || (t[0] = (i) => a.value = i),
|
|
356
|
+
options: N.value,
|
|
311
357
|
style: { width: "200px" },
|
|
312
|
-
placeholder:
|
|
313
|
-
}, null, 8, ["value", "options", "placeholder"])
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
style: { width: "220px" }
|
|
320
|
-
}, {
|
|
321
|
-
prefix: v(() => [
|
|
322
|
-
u(y, {
|
|
323
|
-
icon: "ph:magnifying-glass",
|
|
324
|
-
size: 16
|
|
325
|
-
})
|
|
326
|
-
]),
|
|
327
|
-
_: 1
|
|
328
|
-
}, 8, ["value", "placeholder"]),
|
|
329
|
-
u(r(k), {
|
|
330
|
-
quaternary: "",
|
|
331
|
-
onClick: Y
|
|
358
|
+
placeholder: s(n)("menu.module")
|
|
359
|
+
}, null, 8, ["value", "options", "placeholder"])
|
|
360
|
+
]),
|
|
361
|
+
"toolbar-right": h(() => [
|
|
362
|
+
v(s(w), {
|
|
363
|
+
secondary: "",
|
|
364
|
+
onClick: ae
|
|
332
365
|
}, {
|
|
333
|
-
icon:
|
|
334
|
-
|
|
366
|
+
icon: h(() => [
|
|
367
|
+
v(c, {
|
|
335
368
|
icon: z.value ? "ph:arrows-in-line-vertical" : "ph:arrows-out-line-vertical",
|
|
336
369
|
size: 16
|
|
337
370
|
}, null, 8, ["icon"])
|
|
338
371
|
]),
|
|
339
|
-
default:
|
|
340
|
-
|
|
372
|
+
default: h(() => [
|
|
373
|
+
K(" " + V(z.value ? s(n)("common.collapseAll") : s(n)("common.expandAll")), 1)
|
|
341
374
|
]),
|
|
342
375
|
_: 1
|
|
343
376
|
}),
|
|
344
|
-
|
|
377
|
+
ge((G(), we(s(w), {
|
|
345
378
|
type: "primary",
|
|
346
|
-
onClick: t[
|
|
347
|
-
var
|
|
348
|
-
return (
|
|
379
|
+
onClick: t[1] || (t[1] = (i) => {
|
|
380
|
+
var r;
|
|
381
|
+
return (r = _.value) == null ? void 0 : r.openAdd(0);
|
|
349
382
|
})
|
|
350
383
|
}, {
|
|
351
|
-
icon:
|
|
352
|
-
|
|
384
|
+
icon: h(() => [
|
|
385
|
+
v(c, {
|
|
353
386
|
icon: "ph:plus",
|
|
354
387
|
size: 16
|
|
355
388
|
})
|
|
356
389
|
]),
|
|
357
|
-
default:
|
|
358
|
-
|
|
390
|
+
default: h(() => [
|
|
391
|
+
K(" " + V(s(n)("common.add")), 1)
|
|
359
392
|
]),
|
|
360
393
|
_: 1
|
|
361
394
|
})), [
|
|
@@ -363,29 +396,29 @@ const Te = { class: "view fill-page" }, b = 0, G = -1, Ve = /* @__PURE__ */ ae({
|
|
|
363
396
|
])
|
|
364
397
|
]),
|
|
365
398
|
_: 1
|
|
366
|
-
}, 8, ["
|
|
367
|
-
|
|
399
|
+
}, 8, ["loading", "toolbar", "min-row-height", "expanded-row-keys"]),
|
|
400
|
+
v(ze, {
|
|
368
401
|
ref_key: "menuFormRef",
|
|
369
|
-
ref:
|
|
402
|
+
ref: _,
|
|
370
403
|
modules: g.value,
|
|
371
|
-
tree:
|
|
372
|
-
"filtered-tree":
|
|
373
|
-
"module-filter":
|
|
374
|
-
onSaved:
|
|
404
|
+
tree: y.value,
|
|
405
|
+
"filtered-tree": D.value,
|
|
406
|
+
"module-filter": a.value,
|
|
407
|
+
onSaved: S
|
|
375
408
|
}, null, 8, ["modules", "tree", "filtered-tree", "module-filter"]),
|
|
376
|
-
|
|
409
|
+
v(Ce, {
|
|
377
410
|
ref_key: "buttonMgrRef",
|
|
378
|
-
ref:
|
|
379
|
-
tree:
|
|
411
|
+
ref: H,
|
|
412
|
+
tree: y.value,
|
|
380
413
|
routes: B.value,
|
|
381
|
-
"app-prefix":
|
|
382
|
-
onChanged:
|
|
414
|
+
"app-prefix": se.value,
|
|
415
|
+
onChanged: S
|
|
383
416
|
}, null, 8, ["tree", "routes", "app-prefix"])
|
|
384
417
|
]);
|
|
385
418
|
};
|
|
386
419
|
}
|
|
387
420
|
});
|
|
388
421
|
export {
|
|
389
|
-
|
|
422
|
+
dt as default
|
|
390
423
|
};
|
|
391
424
|
//# sourceMappingURL=index2.vue.js.map
|