diff --git a/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationSecretModal.vue b/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationSecretModal.vue new file mode 100644 index 000000000..f8332a6bc --- /dev/null +++ b/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationSecretModal.vue @@ -0,0 +1,83 @@ + + + + + diff --git a/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationTable.vue b/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationTable.vue index 7940f0d70..93ca585da 100644 --- a/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationTable.vue +++ b/apps/vben5/packages/@abp/openiddict/src/components/applications/ApplicationTable.vue @@ -31,6 +31,7 @@ defineOptions({ const MenuItem = Menu.Item; const CheckIcon = createIconifyIcon('ant-design:check-outlined'); const CloseIcon = createIconifyIcon('ant-design:close-outlined'); +const SecretIcon = createIconifyIcon('codicon:gist-secret'); const PermissionsOutlined = createIconifyIcon('icon-park-outline:permissions'); const { hasAccessByCodes } = useAccess(); @@ -138,6 +139,11 @@ const [ApplicationModal, modalApi] = useVbenModal({ () => import('./ApplicationModal.vue'), ), }); +const [ApplicationSecretModal, secretModalApi] = useVbenModal({ + connectedComponent: defineAsyncComponent( + () => import('./ApplicationSecretModal.vue'), + ), +}); const [ApplicationPermissionModal, permissionModalApi] = useVbenModal({ connectedComponent: PermissionModal, }); @@ -182,6 +188,11 @@ const onMenuClick = (row: OpenIddictApplicationDto, info: MenuInfo) => { permissionModalApi.open(); break; } + case 'secret': { + secretModalApi.setData(row); + secretModalApi.open(); + break; + } } }; @@ -239,6 +250,16 @@ const onMenuClick = (row: OpenIddictApplicationDto, info: MenuInfo) => {