From 8530f5aa66997d3c68d224070b5539fa8b18fd4e Mon Sep 17 00:00:00 2001
From: Florent Poittevin <florent.poittevin@unige.ch>
Date: Fri, 25 Oct 2019 15:40:54 +0200
Subject: [PATCH] feat: redirect to go to pertinent page after action like
 create, update or delete

---
 package-lock.json                             | 51 ++++++-------------
 package.json                                  |  2 +-
 .../stores/admin-funding-agencies.state.ts    |  5 +-
 .../stores/admin-institution.state.ts         |  5 +-
 .../license/stores/admin-license.state.ts     |  5 +-
 .../stores/admin-oauth2-client.state.ts       |  5 +-
 .../stores/admin-organizational-unit.state.ts |  8 +--
 .../admin/person/stores/admin-person.state.ts |  5 +-
 .../stores/admin-preservation-policy.state.ts |  5 +-
 .../admin/role/stores/admin-role.state.ts     |  5 +-
 .../stores/admin-submission-policy.state.ts   |  5 +-
 .../admin/user/stores/admin-user.state.ts     |  5 +-
 .../features/deposit/stores/deposit.state.ts  |  5 +-
 .../home-organizational-unit.state.ts         |  6 ---
 .../stores/organizational-unit.state.ts       |  5 +-
 .../shared-funding-agency.state.ts            | 11 +---
 .../institution/shared-institution.state.ts   |  6 ---
 .../stores/language/shared-language.state.ts  |  6 ---
 .../stores/license/shared-license.state.ts    |  6 ---
 .../shared-organizational-unit.state.ts       |  4 --
 .../stores/person/shared-person.state.ts      | 26 +++-------
 .../shared-preservation-policy.state.ts       |  6 ---
 .../shared/stores/role/shared-role.state.ts   |  6 ---
 .../shared-submission-policy.state.ts         |  6 ---
 ...pp-authorized-organizational-unit.state.ts |  4 --
 src/app/stores/person/app-person.state.ts     |  6 ---
 src/app/stores/user/app-user.state.ts         |  6 ---
 27 files changed, 75 insertions(+), 140 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 6e67085b9..648c6538b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1731,7 +1731,7 @@
         "@angular/compiler": "^8.1.3",
         "boxen": "^4.1.0",
         "colorette": "^1.1.0",
-        "flat": "git://github.com/lenchvolodymyr/flat.git#ffe77ef",
+        "flat": "git://github.com/lenchvolodymyr/flat.git#ffe77efe8c33bc80ffb2f7a465537610dea4f611",
         "gettext-parser": "^4.0.1",
         "glob": "^7.1.4",
         "mkdirp": "^0.5.1",
@@ -2406,7 +2406,7 @@
     },
     "ansi-escapes": {
       "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
+      "resolved": "https://packages.dlcm.ch/repository/npm-group/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
       "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==",
       "dev": true
     },
@@ -5638,8 +5638,7 @@
         "ansi-regex": {
           "version": "2.1.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "aproba": {
           "version": "1.2.0",
@@ -5660,14 +5659,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -5682,20 +5679,17 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -5812,8 +5806,7 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "ini": {
           "version": "1.3.5",
@@ -5825,7 +5818,6 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -5840,7 +5832,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -5848,14 +5839,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -5874,7 +5863,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -5955,8 +5943,7 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -5968,7 +5955,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -6054,8 +6040,7 @@
         "safe-buffer": {
           "version": "5.1.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "safer-buffer": {
           "version": "2.1.2",
@@ -6091,7 +6076,6 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -6111,7 +6095,6 @@
           "version": "3.0.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "ansi-regex": "^2.0.0"
           }
@@ -6155,14 +6138,12 @@
         "wrappy": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "yallist": {
           "version": "3.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },
@@ -11345,9 +11326,9 @@
       }
     },
     "solidify-frontend": {
-      "version": "0.1.20",
-      "resolved": "https://packages.dlcm.ch/repository/npm-group/solidify-frontend/-/solidify-frontend-0.1.20.tgz",
-      "integrity": "sha512-bYAvff1M0DCuWw2AX2q002YEi4yVZeMtmKX/9yS0zNfTeOsMkBA2aS9zIDDhsmuwBskLQhBZv8ZWRnvRQ7620g==",
+      "version": "0.1.21",
+      "resolved": "https://packages.dlcm.ch/repository/npm-group/solidify-frontend/-/solidify-frontend-0.1.21.tgz",
+      "integrity": "sha512-Lth9eDtspnq3gzyjjmngxkMkSkMjqD3R3U0xxmkznFE2H7KjUy5+okE7PStuJU4eoJHAP9oo4W7jujHILMrV1A==",
       "requires": {
         "tslib": "^1.9.0"
       }
diff --git a/package.json b/package.json
index 4098078af..645c3f139 100644
--- a/package.json
+++ b/package.json
@@ -69,7 +69,7 @@
     "primeicons": "2.0.0",
     "primeng": "8.0.4",
     "rxjs": "6.5.3",
-    "solidify-frontend": "0.1.20",
+    "solidify-frontend": "0.1.21",
     "sync-pom-version-to-package": "1.3.1",
     "ts-key-enum": "2.0.0",
     "tslib": "1.10.0",
diff --git a/src/app/features/admin/funding-agencies/stores/admin-funding-agencies.state.ts b/src/app/features/admin/funding-agencies/stores/admin-funding-agencies.state.ts
index 2d17c96cf..e49c51f50 100644
--- a/src/app/features/admin/funding-agencies/stores/admin-funding-agencies.state.ts
+++ b/src/app/features/admin/funding-agencies/stores/admin-funding-agencies.state.ts
@@ -39,6 +39,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminFundingAgenciesStateModel extends ResourceStateModel<FundingAgencyExtended> {
@@ -62,7 +63,9 @@ export class AdminFundingAgenciesState extends ResourceState<FundingAgencyExtend
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminFundingAgenciesActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.admin,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminFundingAgenciesDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminFundingAgenciesDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminFundingAgencies,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.funding-agencies.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.funding-agencies.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.funding-agencies.notification.resource.update"),
diff --git a/src/app/features/admin/institution/stores/admin-institution.state.ts b/src/app/features/admin/institution/stores/admin-institution.state.ts
index 645650ebb..eab72b9f0 100644
--- a/src/app/features/admin/institution/stores/admin-institution.state.ts
+++ b/src/app/features/admin/institution/stores/admin-institution.state.ts
@@ -18,6 +18,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminInstitutionStateModel extends ResourceStateModel<Institution> {
@@ -37,7 +38,9 @@ export class AdminInstitutionState extends ResourceState<Institution> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminInstitutionActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminInstitution,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminInstitutionDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminInstitutionDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminInstitution,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.institution.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.institution.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.institution.notification.resource.update"),
diff --git a/src/app/features/admin/license/stores/admin-license.state.ts b/src/app/features/admin/license/stores/admin-license.state.ts
index 4ba423fd0..dd8e99f6f 100644
--- a/src/app/features/admin/license/stores/admin-license.state.ts
+++ b/src/app/features/admin/license/stores/admin-license.state.ts
@@ -18,6 +18,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminLicenseStateModel extends ResourceStateModel<License> {
@@ -36,7 +37,9 @@ export class AdminLicenseState extends ResourceState<License> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminLicenseActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminLicense,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminLicenseDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminLicenseDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminLicense,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.license.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.license.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.license.notification.resource.update"),
diff --git a/src/app/features/admin/oauth2-client/stores/admin-oauth2-client.state.ts b/src/app/features/admin/oauth2-client/stores/admin-oauth2-client.state.ts
index ecf040f1c..bab4b71be 100644
--- a/src/app/features/admin/oauth2-client/stores/admin-oauth2-client.state.ts
+++ b/src/app/features/admin/oauth2-client/stores/admin-oauth2-client.state.ts
@@ -18,6 +18,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminOAuth2ClientStateModel extends ResourceStateModel<Oauth2Client> {
@@ -36,7 +37,9 @@ export class AdminOAuth2ClientState extends ResourceState<Oauth2Client> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminOAuth2ClientActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.admin,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminOAuth2clientDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminOAuth2clientDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminOAuth2client,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.oauth2.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.oauth2.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.oauth2.notification.resource.update"),
diff --git a/src/app/features/admin/orgunit/stores/admin-organizational-unit.state.ts b/src/app/features/admin/orgunit/stores/admin-organizational-unit.state.ts
index 2bfb86e4f..4e2c0a6ed 100644
--- a/src/app/features/admin/orgunit/stores/admin-organizational-unit.state.ts
+++ b/src/app/features/admin/orgunit/stores/admin-organizational-unit.state.ts
@@ -64,6 +64,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminOrganizationalUnitStateModel extends ResourceStateModel<OrganizationalUnitExtended> {
@@ -89,7 +90,7 @@ export interface AdminOrganizationalUnitStateModel extends ResourceStateModel<Or
     AdminOrganizationalUnitPreservationPolicyState,
     AdminOrganizationalUnitPersonRoleState,
     AdminOrganizationalUnitFundingAgencyState,
-    AdminOrganizationalUnitInstitutionState
+    AdminOrganizationalUnitInstitutionState,
   ],
 })
 export class AdminOrganizationalUnitState extends ResourceState<OrganizationalUnitExtended> {
@@ -100,7 +101,9 @@ export class AdminOrganizationalUnitState extends ResourceState<OrganizationalUn
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminOrgUnitActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminOrganizationalUnit,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminOrganizationalUnitDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminOrganizationalUnitDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminOrganizationalUnit,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.organizationalUnit.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.organizationalUnit.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.organizationalUnit.notification.resource.update"),
@@ -251,7 +254,6 @@ export class AdminOrganizationalUnitState extends ResourceState<OrganizationalUn
 
     const newInstitutionsIds = action.modelFormControlEvent.model.institutions.map(p => p.resId);
 
-
     if (!isNullOrUndefined(ctx.getState().current)) {
       oldDefaultPreservationPolicyId = ObjectUtil.getValue(ctx.getState().current.defaultPreservationPolicy, ModelAttributeEnum.resId) as string;
       oldDefaultSubmissionPolicyId = ObjectUtil.getValue(ctx.getState().current.defaultSubmissionPolicy, ModelAttributeEnum.resId) as string;
diff --git a/src/app/features/admin/person/stores/admin-person.state.ts b/src/app/features/admin/person/stores/admin-person.state.ts
index 5d0107763..ab8b3b12f 100644
--- a/src/app/features/admin/person/stores/admin-person.state.ts
+++ b/src/app/features/admin/person/stores/admin-person.state.ts
@@ -43,6 +43,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminPersonStateModel extends ResourceStateModel<PersonExtended> {
@@ -69,7 +70,9 @@ export class AdminPersonState extends ResourceState<PersonExtended> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminPersonActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminPerson,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminPersonDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminPersonDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminPerson,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.person.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.person.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.person.notification.resource.update"),
diff --git a/src/app/features/admin/preservation-policy/stores/admin-preservation-policy.state.ts b/src/app/features/admin/preservation-policy/stores/admin-preservation-policy.state.ts
index 44e98737e..50df90a93 100644
--- a/src/app/features/admin/preservation-policy/stores/admin-preservation-policy.state.ts
+++ b/src/app/features/admin/preservation-policy/stores/admin-preservation-policy.state.ts
@@ -17,6 +17,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 import {adminPreservationPolicyActionNameSpace} from "./admin-preservation-policy.action";
 
@@ -36,7 +37,9 @@ export class AdminPreservationPolicyState extends ResourceState<PreservationPoli
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminPreservationPolicyActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminPreservationPolicy,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminPreservationPolicyDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminPreservationPolicyDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminPreservationPolicy,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.preservationPolicy.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.preservationPolicy.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.preservationPolicy.notification.resource.update"),
diff --git a/src/app/features/admin/role/stores/admin-role.state.ts b/src/app/features/admin/role/stores/admin-role.state.ts
index f7dfa9ffd..5ff38d841 100644
--- a/src/app/features/admin/role/stores/admin-role.state.ts
+++ b/src/app/features/admin/role/stores/admin-role.state.ts
@@ -18,6 +18,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminRoleStateModel extends ResourceStateModel<Role> {
@@ -37,7 +38,9 @@ export class AdminRoleState extends ResourceState<Role> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminRoleActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.admin,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminRoleDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminRoleDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminRole,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.roles.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.roles.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.roles.notification.resource.update"),
diff --git a/src/app/features/admin/submission-policy/stores/admin-submission-policy.state.ts b/src/app/features/admin/submission-policy/stores/admin-submission-policy.state.ts
index b2d97ed11..6ed96f16e 100644
--- a/src/app/features/admin/submission-policy/stores/admin-submission-policy.state.ts
+++ b/src/app/features/admin/submission-policy/stores/admin-submission-policy.state.ts
@@ -17,6 +17,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 import {adminSubmissionPolicyActionNameSpace} from "./admin-submission-policy.action";
 
@@ -36,7 +37,9 @@ export class AdminSubmissionPolicyState extends ResourceState<SubmissionPolicy>
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminSubmissionPolicyActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminSubmissionPolicy,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminSubmissionPolicyDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminSubmissionPolicyDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminSubmissionPolicy,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.submissionPolicy.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.submissionPolicy.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.submissionPolicy.notification.resource.update"),
diff --git a/src/app/features/admin/user/stores/admin-user.state.ts b/src/app/features/admin/user/stores/admin-user.state.ts
index d490a7844..588596f88 100644
--- a/src/app/features/admin/user/stores/admin-user.state.ts
+++ b/src/app/features/admin/user/stores/admin-user.state.ts
@@ -25,6 +25,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface AdminUserStateModel extends ResourceStateModel<UserExtended> {
@@ -44,7 +45,9 @@ export class AdminUserState extends ResourceState<UserExtended> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: adminUserActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.adminUser,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.adminUserDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.adminUserDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.adminUser,
       notificationResourceCreateTextToTranslate: TRANSLATE("admin.user.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("admin.user.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("admin.user.notification.resource.update"),
diff --git a/src/app/features/deposit/stores/deposit.state.ts b/src/app/features/deposit/stores/deposit.state.ts
index f334edd9c..4ba28d9b9 100644
--- a/src/app/features/deposit/stores/deposit.state.ts
+++ b/src/app/features/deposit/stores/deposit.state.ts
@@ -73,6 +73,7 @@ import {
   ResourceStateModel,
   StoreUtil,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 
@@ -112,7 +113,9 @@ export class DepositState extends ResourceState<DepositExtended> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: depositActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.deposit,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.depositEdit + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.depositDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.deposit,
       notificationResourceCreateTextToTranslate: TRANSLATE("deposit.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("deposit.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("deposit.notification.resource.update"),
diff --git a/src/app/features/home/stores/organizational-unit/home-organizational-unit.state.ts b/src/app/features/home/stores/organizational-unit/home-organizational-unit.state.ts
index 12e87cb95..2d7c8a440 100644
--- a/src/app/features/home/stores/organizational-unit/home-organizational-unit.state.ts
+++ b/src/app/features/home/stores/organizational-unit/home-organizational-unit.state.ts
@@ -9,7 +9,6 @@ import {
 import {AccessOrganizationalUnit} from "@app/generated-api";
 import {AccessResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {Navigate} from "@ngxs/router-plugin";
 import {
   Action,
@@ -34,7 +33,6 @@ import {
   ResourceState,
   ResourceStateModel,
   StoreUtil,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../../environments/environment";
 
@@ -65,10 +63,6 @@ export class HomeOrganizationalUnitState extends ResourceState<AccessOrganizatio
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: homeOrgUnitActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("home.orgunit.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("home.orgunit.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("home.orgunit.notification.resource.update"),
     });
   }
 
diff --git a/src/app/features/organizational-unit/stores/organizational-unit.state.ts b/src/app/features/organizational-unit/stores/organizational-unit.state.ts
index 383560e3c..18c47f9b3 100644
--- a/src/app/features/organizational-unit/stores/organizational-unit.state.ts
+++ b/src/app/features/organizational-unit/stores/organizational-unit.state.ts
@@ -15,6 +15,7 @@ import {
   ResourceState,
   ResourceStateModel,
   TRANSLATE,
+  urlSeparator,
 } from "solidify-frontend";
 
 export interface OrganizationalUnitStateModel extends ResourceStateModel<OrganizationalUnitExtended> {
@@ -35,7 +36,9 @@ export class OrganizationalUnitState extends ResourceState<OrganizationalUnitExt
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: orgUnitActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.organizationalUnit,
+      routeRedirectUrlAfterSuccessCreateAction: (resId: string) => RoutesEnum.organizationalUnitDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessUpdateAction: (resId: string) => RoutesEnum.organizationalUnitDetail + urlSeparator + resId,
+      routeRedirectUrlAfterSuccessDeleteAction: RoutesEnum.organizationalUnit,
       notificationResourceCreateTextToTranslate: TRANSLATE("organizationalUnit.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("organizationalUnit.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("organizationalUnit.notification.resource.update"),
diff --git a/src/app/shared/stores/funding-agency/shared-funding-agency.state.ts b/src/app/shared/stores/funding-agency/shared-funding-agency.state.ts
index 0ca402ae4..f99eb15b1 100644
--- a/src/app/shared/stores/funding-agency/shared-funding-agency.state.ts
+++ b/src/app/shared/stores/funding-agency/shared-funding-agency.state.ts
@@ -1,10 +1,6 @@
-import {
-  FundingAgency,
-  Institution,
-} from "@app/generated-api";
+import {FundingAgency} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {
   Actions,
   State,
@@ -18,7 +14,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 
@@ -39,10 +34,6 @@ export class SharedFundingAgencyState extends ResourceState<FundingAgency> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedFundingAgencyActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.fundingAgency.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.fundingAgency.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.fundingAgency.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/institution/shared-institution.state.ts b/src/app/shared/stores/institution/shared-institution.state.ts
index 8d36498d2..79d8784b8 100644
--- a/src/app/shared/stores/institution/shared-institution.state.ts
+++ b/src/app/shared/stores/institution/shared-institution.state.ts
@@ -1,7 +1,6 @@
 import {Institution} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {sharedInstitutionActionNameSpace} from "@app/shared/stores/institution/shared-institution.action";
 import {
   Actions,
@@ -15,7 +14,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 
@@ -36,10 +34,6 @@ export class SharedInstitutionState extends ResourceState<Institution> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedInstitutionActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.institution.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.institution.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.institution.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/language/shared-language.state.ts b/src/app/shared/stores/language/shared-language.state.ts
index aaf8df0d2..abb53184e 100644
--- a/src/app/shared/stores/language/shared-language.state.ts
+++ b/src/app/shared/stores/language/shared-language.state.ts
@@ -1,6 +1,5 @@
 import {Language} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {sharedLanguageActionNameSpace} from "@app/shared/stores/language/shared-language.action";
 import {
   Actions,
@@ -14,7 +13,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 import {LocalStateEnum} from "../../enums/local-state.enum";
@@ -36,10 +34,6 @@ export class SharedLanguageState extends ResourceState<Language> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedLanguageActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.language.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.language.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.language.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/license/shared-license.state.ts b/src/app/shared/stores/license/shared-license.state.ts
index b33095341..81e0ba47d 100644
--- a/src/app/shared/stores/license/shared-license.state.ts
+++ b/src/app/shared/stores/license/shared-license.state.ts
@@ -1,7 +1,6 @@
 import {License} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {sharedLicenseActionNameSpace} from "@app/shared/stores/license/shared-license.action";
 import {
   Actions,
@@ -17,7 +16,6 @@ import {
   ResourceState,
   ResourceStateModel,
   StoreUtil,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 
@@ -38,10 +36,6 @@ export class SharedLicenseState extends ResourceState<License> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedLicenseActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.license.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.license.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.license.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/organizational-unit/shared-organizational-unit.state.ts b/src/app/shared/stores/organizational-unit/shared-organizational-unit.state.ts
index 321584ce3..b721a6adc 100644
--- a/src/app/shared/stores/organizational-unit/shared-organizational-unit.state.ts
+++ b/src/app/shared/stores/organizational-unit/shared-organizational-unit.state.ts
@@ -52,10 +52,6 @@ export class SharedOrganizationalUnitState extends ResourceState<OrganizationalU
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedOrgUnitActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: undefined,
-      notificationResourceCreateTextToTranslate: undefined,
-      notificationResourceDeleteTextToTranslate: undefined,
-      notificationResourceUpdateTextToTranslate: undefined,
     });
   }
 
diff --git a/src/app/shared/stores/person/shared-person.state.ts b/src/app/shared/stores/person/shared-person.state.ts
index bf05f2bea..d9e3eb547 100644
--- a/src/app/shared/stores/person/shared-person.state.ts
+++ b/src/app/shared/stores/person/shared-person.state.ts
@@ -1,15 +1,11 @@
 import {PersonExtended} from "@admin/models/person-extended.model";
-import {
-  Institution,
-  Person,
-} from "@app/generated-api";
+import {Institution} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
 import {
   SharedPersonAction,
   sharedPersonActionNameSpace,
 } from "@app/shared/stores/person/shared-person.action";
-import {DepositPersonAction} from "@deposit/stores/people/deposit-person.action";
 import {
   Action,
   Actions,
@@ -21,13 +17,9 @@ import {
 } from "@ngxs/store";
 import {ApiActionEnum} from "@shared/enums/api-action.enum";
 import {ApiResourceNameEnum} from "@shared/enums/api-resource-name.enum";
-import {
-  Observable,
-  pipe,
-} from "rxjs";
+import {Observable} from "rxjs";
 import {
   catchError,
-  take,
   tap,
 } from "rxjs/operators";
 import {
@@ -35,7 +27,6 @@ import {
   CollectionTyped,
   defaultResourceStateInitValue,
   isNullOrUndefined,
-  isTrue,
   isWhiteString,
   NotificationService,
   ObjectUtil,
@@ -69,7 +60,6 @@ export class SharedPersonState extends ResourceState<PersonExtended> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedPersonActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: undefined,
       notificationResourceCreateTextToTranslate: TRANSLATE("shared.person.notification.resource.create"),
       notificationResourceDeleteTextToTranslate: TRANSLATE("shared.person.notification.resource.delete"),
       notificationResourceUpdateTextToTranslate: TRANSLATE("shared.person.notification.resource.update"),
@@ -111,15 +101,15 @@ export class SharedPersonState extends ResourceState<PersonExtended> {
         subActionCompletions: [
           this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchPersonSuccess)),
           this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchPersonFail)),
-        ]
+        ],
       },
       {
         action: new SharedPersonAction.SearchInstitutions(),
         subActionCompletions: [
           this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchInstitutionsSuccess)),
           this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchInstitutionsFail)),
-        ]
-      }
+        ],
+      },
     ]).pipe(
       tap(success => {
         if (success) {
@@ -127,7 +117,7 @@ export class SharedPersonState extends ResourceState<PersonExtended> {
         } else {
           ctx.dispatch(new SharedPersonAction.SearchFail(action));
         }
-      })
+      }),
     );
   }
 
@@ -184,7 +174,7 @@ export class SharedPersonState extends ResourceState<PersonExtended> {
           subActionCompletions: [
             this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchPersonInstitutionSuccess)),
             this.actions$.pipe(ofActionCompleted(SharedPersonAction.SearchPersonInstitutionFail)),
-          ]
+          ],
         } as ActionSubActionCompletionsWrapper);
       });
 
@@ -196,7 +186,7 @@ export class SharedPersonState extends ResourceState<PersonExtended> {
             } else {
               ctx.dispatch(new SharedPersonAction.SearchInstitutionsFail(action));
             }
-          })
+          }),
         ).subscribe();
     }
     ctx.dispatch(new SharedPersonAction.SearchInstitutionsSuccess(action));
diff --git a/src/app/shared/stores/preservation-policy/shared-preservation-policy.state.ts b/src/app/shared/stores/preservation-policy/shared-preservation-policy.state.ts
index 9a483b113..1c3f0879c 100644
--- a/src/app/shared/stores/preservation-policy/shared-preservation-policy.state.ts
+++ b/src/app/shared/stores/preservation-policy/shared-preservation-policy.state.ts
@@ -1,6 +1,5 @@
 import {PreservationPolicy} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {sharedPreservationPolicyActionNameSpace} from "@app/shared/stores/preservation-policy/shared-preservation-policy.action";
 import {
   Actions,
@@ -14,7 +13,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 import {LocalStateEnum} from "../../enums/local-state.enum";
@@ -36,10 +34,6 @@ export class SharedPreservationPolicyState extends ResourceState<PreservationPol
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedPreservationPolicyActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.preservationPolicy.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.preservationPolicy.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.preservationPolicy.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/role/shared-role.state.ts b/src/app/shared/stores/role/shared-role.state.ts
index 87d250733..4b3ee247c 100644
--- a/src/app/shared/stores/role/shared-role.state.ts
+++ b/src/app/shared/stores/role/shared-role.state.ts
@@ -1,7 +1,6 @@
 import {Role} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {
   Actions,
   State,
@@ -15,7 +14,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 
@@ -36,10 +34,6 @@ export class SharedRoleState extends ResourceState<Role> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedRoleActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.role.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.role.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.role.notification.resource.update"),
     });
   }
 
diff --git a/src/app/shared/stores/submission-policy/shared-submission-policy.state.ts b/src/app/shared/stores/submission-policy/shared-submission-policy.state.ts
index 739006d43..3e01622f3 100644
--- a/src/app/shared/stores/submission-policy/shared-submission-policy.state.ts
+++ b/src/app/shared/stores/submission-policy/shared-submission-policy.state.ts
@@ -1,6 +1,5 @@
 import {SubmissionPolicy} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {sharedSubmissionPolicyActionNameSpace} from "@app/shared/stores/submission-policy/shared-submission-policy.action";
 import {
   Actions,
@@ -14,7 +13,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../../environments/environment";
 import {LocalStateEnum} from "../../enums/local-state.enum";
@@ -36,10 +34,6 @@ export class SharedSubmissionPolicyState extends ResourceState<SubmissionPolicy>
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: sharedSubmissionPolicyActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("shared.submissionPolicy.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("shared.submissionPolicy.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("shared.submissionPolicy.notification.resource.update"),
     });
   }
 
diff --git a/src/app/stores/authorized-organizational-unit/app-authorized-organizational-unit.state.ts b/src/app/stores/authorized-organizational-unit/app-authorized-organizational-unit.state.ts
index 05a49d19d..aa1d2e3e2 100644
--- a/src/app/stores/authorized-organizational-unit/app-authorized-organizational-unit.state.ts
+++ b/src/app/stores/authorized-organizational-unit/app-authorized-organizational-unit.state.ts
@@ -35,10 +35,6 @@ export class AppAuthorizedOrganizationalUnitState extends ResourceState<Organiza
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: appAuthorizedOrganizationalUnit,
-      routeRedirectUrlAfterSuccessAction: undefined,
-      notificationResourceCreateTextToTranslate: undefined,
-      notificationResourceDeleteTextToTranslate: undefined,
-      notificationResourceUpdateTextToTranslate: undefined,
     });
   }
 
diff --git a/src/app/stores/person/app-person.state.ts b/src/app/stores/person/app-person.state.ts
index 6016dcf4e..364725ef8 100644
--- a/src/app/stores/person/app-person.state.ts
+++ b/src/app/stores/person/app-person.state.ts
@@ -2,7 +2,6 @@ import {PersonExtended} from "@admin/models/person-extended.model";
 import {Person} from "@app/generated-api";
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {
   AppPersonAction,
   appPersonActionNameSpace,
@@ -27,7 +26,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
 } from "solidify-frontend";
 import {environment} from "../../../environments/environment";
 
@@ -48,10 +46,6 @@ export class AppPersonState extends ResourceState<Person> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: appPersonActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("app.person.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("app.person.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("app.person.notification.resource.update"),
       keepCurrentStateAfterUpdate: true,
     });
   }
diff --git a/src/app/stores/user/app-user.state.ts b/src/app/stores/user/app-user.state.ts
index 9c7b1945c..4d4872873 100644
--- a/src/app/stores/user/app-user.state.ts
+++ b/src/app/stores/user/app-user.state.ts
@@ -1,6 +1,5 @@
 import {AdminResourceApiEnum} from "@app/shared/enums/api.enum";
 import {LocalStateEnum} from "@app/shared/enums/local-state.enum";
-import {RoutesEnum} from "@app/shared/enums/routes.enum";
 import {AppPersonAction} from "@app/stores/person/app-person.action";
 import {
   AppUserAction,
@@ -28,7 +27,6 @@ import {
   QueryParameters,
   ResourceState,
   ResourceStateModel,
-  TRANSLATE,
   urlSeparator,
 } from "solidify-frontend";
 import {environment} from "../../../environments/environment";
@@ -50,10 +48,6 @@ export class AppUserState extends ResourceState<UserExtended> {
               protected actions$: Actions) {
     super(apiService, store, notificationService, actions$, {
       nameSpace: appUserActionNameSpace,
-      routeRedirectUrlAfterSuccessAction: RoutesEnum.homePage,
-      notificationResourceCreateTextToTranslate: TRANSLATE("app.user.notification.resource.create"),
-      notificationResourceDeleteTextToTranslate: TRANSLATE("app.user.notification.resource.delete"),
-      notificationResourceUpdateTextToTranslate: TRANSLATE("app.user.notification.resource.update"),
     });
   }
 
-- 
GitLab