@thunderid/react 1.13.0 → 1.15.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/dist/ThunderIDReactClient.d.ts.map +1 -1
- package/dist/ThunderIDReactClient.js +6 -2
- package/dist/ThunderIDReactClient.js.map +1 -1
- package/dist/api/account/getAccessibleOrganizationUnits.d.ts +27 -0
- package/dist/api/account/getAccessibleOrganizationUnits.d.ts.map +1 -0
- package/dist/api/account/getAccessibleOrganizationUnits.js +24 -0
- package/dist/api/account/getAccessibleOrganizationUnits.js.map +1 -0
- package/dist/api/auth/executeEmbeddedSelfFlow.d.ts +36 -0
- package/dist/api/auth/executeEmbeddedSelfFlow.d.ts.map +1 -0
- package/dist/api/auth/executeEmbeddedSelfFlow.js +30 -0
- package/dist/api/auth/executeEmbeddedSelfFlow.js.map +1 -0
- package/dist/cjs/ThunderIDReactClient.cjs +6 -2
- package/dist/cjs/ThunderIDReactClient.cjs.map +1 -1
- package/dist/cjs/api/account/getAccessibleOrganizationUnits.cjs +26 -0
- package/dist/cjs/api/account/getAccessibleOrganizationUnits.cjs.map +1 -0
- package/dist/cjs/api/auth/executeEmbeddedSelfFlow.cjs +32 -0
- package/dist/cjs/api/auth/executeEmbeddedSelfFlow.cjs.map +1 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.cjs +214 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.cjs.map +1 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.cjs +184 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.cjs.map +1 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.cjs +139 -0
- package/dist/cjs/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.cjs.map +1 -0
- package/dist/cjs/components/account/UserProfile/BaseUserProfile.cjs +195 -46
- package/dist/cjs/components/account/UserProfile/BaseUserProfile.cjs.map +1 -1
- package/dist/cjs/components/account/UserProfile/BaseUserProfile.styles.cjs +57 -4
- package/dist/cjs/components/account/UserProfile/BaseUserProfile.styles.cjs.map +1 -1
- package/dist/cjs/components/account/UserProfile/UserProfile.cjs +13 -1
- package/dist/cjs/components/account/UserProfile/UserProfile.cjs.map +1 -1
- package/dist/cjs/components/account/VerifyAttribute/BaseVerifyAttribute.cjs +358 -0
- package/dist/cjs/components/account/VerifyAttribute/BaseVerifyAttribute.cjs.map +1 -0
- package/dist/cjs/components/account/VerifyAttribute/BaseVerifyAttribute.styles.cjs +84 -0
- package/dist/cjs/components/account/VerifyAttribute/BaseVerifyAttribute.styles.cjs.map +1 -0
- package/dist/cjs/components/account/VerifyAttribute/VerifyAttribute.cjs +94 -0
- package/dist/cjs/components/account/VerifyAttribute/VerifyAttribute.cjs.map +1 -0
- package/dist/cjs/components/auth/SignIn/SignIn.cjs +23 -20
- package/dist/cjs/components/auth/SignIn/SignIn.cjs.map +1 -1
- package/dist/cjs/components/auth/SignUp/BaseSignUp.cjs +13 -9
- package/dist/cjs/components/auth/SignUp/BaseSignUp.cjs.map +1 -1
- package/dist/cjs/components/auth/flow/AuthOptionFactory.cjs +22 -2
- package/dist/cjs/components/auth/flow/AuthOptionFactory.cjs.map +1 -1
- package/dist/cjs/components/common/LanguageSwitcher/BaseLanguageSwitcher.cjs +1 -1
- package/dist/cjs/components/{admin → management}/AgentCreate/AgentCreate.cjs +8 -7
- package/dist/cjs/components/management/AgentCreate/AgentCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/AgentCreate/BaseAgentCreate.cjs +1 -1
- package/dist/cjs/components/management/AgentCreate/BaseAgentCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/AgentDetails/AgentDetails.cjs +1 -1
- package/dist/cjs/components/management/AgentDetails/AgentDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/AgentDetails/BaseAgentDetails.cjs +1 -1
- package/dist/cjs/components/management/AgentDetails/BaseAgentDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/AgentList/AgentList.cjs +11 -6
- package/dist/cjs/components/management/AgentList/AgentList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/AgentList/BaseAgentList.cjs +1 -1
- package/dist/cjs/components/management/AgentList/BaseAgentList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationCreate/ApplicationCreate.cjs +10 -5
- package/dist/cjs/components/management/ApplicationCreate/ApplicationCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationCreate/BaseApplicationCreate.cjs +1 -1
- package/dist/cjs/components/management/ApplicationCreate/BaseApplicationCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationDetails/ApplicationDetails.cjs +1 -1
- package/dist/cjs/components/management/ApplicationDetails/ApplicationDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationDetails/BaseApplicationDetails.cjs +1 -1
- package/dist/cjs/components/management/ApplicationDetails/BaseApplicationDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationList/ApplicationList.cjs +9 -4
- package/dist/cjs/components/management/ApplicationList/ApplicationList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/ApplicationList/BaseApplicationList.cjs +1 -1
- package/dist/cjs/components/management/ApplicationList/BaseApplicationList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupCreate/BaseGroupCreate.cjs +1 -1
- package/dist/cjs/components/management/GroupCreate/BaseGroupCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupCreate/GroupCreate.cjs +1 -1
- package/dist/cjs/components/management/GroupCreate/GroupCreate.cjs.map +1 -0
- package/dist/cjs/components/management/GroupDetails/BaseGroupDetails.cjs +86 -0
- package/dist/cjs/components/management/GroupDetails/BaseGroupDetails.cjs.map +1 -0
- package/dist/cjs/components/management/GroupDetails/GroupDetails.cjs +60 -0
- package/dist/cjs/components/management/GroupDetails/GroupDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupList/BaseGroupList.cjs +1 -1
- package/dist/cjs/components/management/GroupList/BaseGroupList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupList/GroupList.cjs +1 -1
- package/dist/cjs/components/management/GroupList/GroupList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupMembers/BaseGroupMembers.cjs +1 -1
- package/dist/cjs/components/management/GroupMembers/BaseGroupMembers.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/GroupMembers/GroupMembers.cjs +1 -1
- package/dist/cjs/components/management/GroupMembers/GroupMembers.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.cjs +140 -0
- package/dist/cjs/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitCreate/OrganizationUnitCreate.cjs +83 -0
- package/dist/cjs/components/management/OrganizationUnitCreate/OrganizationUnitCreate.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.cjs +276 -0
- package/dist/cjs/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitDetails/OrganizationUnitDetails.cjs +142 -0
- package/dist/cjs/components/management/OrganizationUnitDetails/OrganizationUnitDetails.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitList/BaseOrganizationUnitList.cjs +78 -0
- package/dist/cjs/components/management/OrganizationUnitList/BaseOrganizationUnitList.cjs.map +1 -0
- package/dist/cjs/components/management/OrganizationUnitList/OrganizationUnitList.cjs +69 -0
- package/dist/cjs/components/management/OrganizationUnitList/OrganizationUnitList.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectCreate/BaseProjectCreate.cjs +116 -0
- package/dist/cjs/components/management/ProjectCreate/BaseProjectCreate.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectCreate/ProjectCreate.cjs +43 -0
- package/dist/cjs/components/management/ProjectCreate/ProjectCreate.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectDetails/BaseProjectDetails.cjs +172 -0
- package/dist/cjs/components/management/ProjectDetails/BaseProjectDetails.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectDetails/ProjectDetails.cjs +68 -0
- package/dist/cjs/components/management/ProjectDetails/ProjectDetails.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectList/BaseProjectList.cjs +78 -0
- package/dist/cjs/components/management/ProjectList/BaseProjectList.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectList/ProjectList.cjs +51 -0
- package/dist/cjs/components/management/ProjectList/ProjectList.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectSwitcher/BaseProjectSwitcher.cjs +58 -0
- package/dist/cjs/components/management/ProjectSwitcher/BaseProjectSwitcher.cjs.map +1 -0
- package/dist/cjs/components/management/ProjectSwitcher/ProjectSwitcher.cjs +72 -0
- package/dist/cjs/components/management/ProjectSwitcher/ProjectSwitcher.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleAssignments/BaseRoleAssignments.cjs +1 -1
- package/dist/cjs/components/management/RoleAssignments/BaseRoleAssignments.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleAssignments/RoleAssignments.cjs +1 -1
- package/dist/cjs/components/management/RoleAssignments/RoleAssignments.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleCreate/BaseRoleCreate.cjs +1 -1
- package/dist/cjs/components/management/RoleCreate/BaseRoleCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleCreate/RoleCreate.cjs +1 -1
- package/dist/cjs/components/management/RoleCreate/RoleCreate.cjs.map +1 -0
- package/dist/cjs/components/management/RoleDetails/BaseRoleDetails.cjs +87 -0
- package/dist/cjs/components/management/RoleDetails/BaseRoleDetails.cjs.map +1 -0
- package/dist/cjs/components/management/RoleDetails/RoleDetails.cjs +68 -0
- package/dist/cjs/components/management/RoleDetails/RoleDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleList/BaseRoleList.cjs +1 -1
- package/dist/cjs/components/management/RoleList/BaseRoleList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/RoleList/RoleList.cjs +1 -1
- package/dist/cjs/components/management/RoleList/RoleList.cjs.map +1 -0
- package/dist/cjs/components/management/RolePermissions/BaseRolePermissions.cjs +181 -0
- package/dist/cjs/components/management/RolePermissions/BaseRolePermissions.cjs.map +1 -0
- package/dist/cjs/components/management/RolePermissions/RolePermissions.cjs +112 -0
- package/dist/cjs/components/management/RolePermissions/RolePermissions.cjs.map +1 -0
- package/dist/cjs/components/management/SharingPolicies/BaseSharingPolicies.cjs +308 -0
- package/dist/cjs/components/management/SharingPolicies/BaseSharingPolicies.cjs.map +1 -0
- package/dist/cjs/components/management/SharingPolicies/SharingPolicies.cjs +126 -0
- package/dist/cjs/components/management/SharingPolicies/SharingPolicies.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserCreate/BaseUserCreate.cjs +1 -1
- package/dist/cjs/components/management/UserCreate/BaseUserCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserCreate/UserCreate.cjs +1 -1
- package/dist/cjs/components/management/UserCreate/UserCreate.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserCreate/userCreateFields.cjs +1 -1
- package/dist/cjs/components/management/UserCreate/userCreateFields.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserDetails/BaseUserDetails.cjs +1 -1
- package/dist/cjs/components/management/UserDetails/BaseUserDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserDetails/UserDetails.cjs +1 -1
- package/dist/cjs/components/management/UserDetails/UserDetails.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserList/BaseUserList.cjs +1 -1
- package/dist/cjs/components/management/UserList/BaseUserList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/UserList/UserList.cjs +1 -1
- package/dist/cjs/components/management/UserList/UserList.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AccountLifecycleParts.cjs +1 -1
- package/dist/cjs/components/management/shared/AccountLifecycleParts.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AdminParts.cjs +1 -1
- package/dist/cjs/components/management/shared/AdminParts.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AdminParts.styles.cjs +1 -1
- package/dist/cjs/components/management/shared/AdminParts.styles.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AdminSearch.cjs +1 -1
- package/dist/cjs/components/management/shared/AdminSearch.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AdminSection.cjs +1 -1
- package/dist/cjs/components/management/shared/AdminSection.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/AdminSection.styles.cjs +1 -1
- package/dist/cjs/components/management/shared/AdminSection.styles.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/ApplicationFormFields.cjs +1 -1
- package/dist/cjs/components/management/shared/ApplicationFormFields.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/ClientSecretNotice.cjs +1 -1
- package/dist/cjs/components/management/shared/ClientSecretNotice.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/IdentityPicker.cjs +1 -1
- package/dist/cjs/components/management/shared/IdentityPicker.cjs.map +1 -0
- package/dist/cjs/components/management/shared/formatTimestamp.cjs +18 -0
- package/dist/cjs/components/management/shared/formatTimestamp.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/useAdminPartStyles.cjs +1 -1
- package/dist/cjs/components/management/shared/useAdminPartStyles.cjs.map +1 -0
- package/dist/cjs/components/{admin → management}/shared/useDefaultOuId.cjs +1 -1
- package/dist/cjs/components/management/shared/useDefaultOuId.cjs.map +1 -0
- package/dist/cjs/components/management/shared/useProjectPlacement.cjs +23 -0
- package/dist/cjs/components/management/shared/useProjectPlacement.cjs.map +1 -0
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +5 -0
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +41 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/useCurrentProjectState.cjs +33 -0
- package/dist/cjs/contexts/ThunderID/useCurrentProjectState.cjs.map +1 -0
- package/dist/cjs/hooks/management/useManagementEndpoint.cjs.map +1 -1
- package/dist/cjs/index.cjs +407 -33
- package/dist/cjs/utils/flowTransformer.cjs +9 -0
- package/dist/cjs/utils/flowTransformer.cjs.map +1 -1
- package/dist/cjs/utils/getOrganizationUnitSwitchErrorKey.cjs +24 -0
- package/dist/cjs/utils/getOrganizationUnitSwitchErrorKey.cjs.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.d.ts +85 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.d.ts.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.js +209 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.js.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.d.ts +11 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.d.ts.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.js +184 -0
- package/dist/components/account/OrganizationUnitSwitcher/BaseOrganizationUnitSwitcher.styles.js.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.d.ts +54 -0
- package/dist/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.d.ts.map +1 -0
- package/dist/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.js +135 -0
- package/dist/components/account/OrganizationUnitSwitcher/OrganizationUnitSwitcher.js.map +1 -0
- package/dist/components/account/UserProfile/BaseUserProfile.d.ts +27 -1
- package/dist/components/account/UserProfile/BaseUserProfile.d.ts.map +1 -1
- package/dist/components/account/UserProfile/BaseUserProfile.js +197 -48
- package/dist/components/account/UserProfile/BaseUserProfile.js.map +1 -1
- package/dist/components/account/UserProfile/BaseUserProfile.styles.d.ts.map +1 -1
- package/dist/components/account/UserProfile/BaseUserProfile.styles.js +57 -4
- package/dist/components/account/UserProfile/BaseUserProfile.styles.js.map +1 -1
- package/dist/components/account/UserProfile/UserProfile.d.ts +7 -1
- package/dist/components/account/UserProfile/UserProfile.d.ts.map +1 -1
- package/dist/components/account/UserProfile/UserProfile.js +14 -2
- package/dist/components/account/UserProfile/UserProfile.js.map +1 -1
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.d.ts +113 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.d.ts.map +1 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.js +354 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.js.map +1 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.styles.d.ts +10 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.styles.d.ts.map +1 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.styles.js +82 -0
- package/dist/components/account/VerifyAttribute/BaseVerifyAttribute.styles.js.map +1 -0
- package/dist/components/account/VerifyAttribute/VerifyAttribute.d.ts +41 -0
- package/dist/components/account/VerifyAttribute/VerifyAttribute.d.ts.map +1 -0
- package/dist/components/account/VerifyAttribute/VerifyAttribute.js +90 -0
- package/dist/components/account/VerifyAttribute/VerifyAttribute.js.map +1 -0
- package/dist/components/auth/SignIn/SignIn.d.ts +5 -0
- package/dist/components/auth/SignIn/SignIn.d.ts.map +1 -1
- package/dist/components/auth/SignIn/SignIn.js +25 -22
- package/dist/components/auth/SignIn/SignIn.js.map +1 -1
- package/dist/components/auth/SignUp/BaseSignUp.d.ts.map +1 -1
- package/dist/components/auth/SignUp/BaseSignUp.js +14 -10
- package/dist/components/auth/SignUp/BaseSignUp.js.map +1 -1
- package/dist/components/auth/flow/AuthOptionFactory.d.ts +5 -1
- package/dist/components/auth/flow/AuthOptionFactory.d.ts.map +1 -1
- package/dist/components/auth/flow/AuthOptionFactory.js +22 -3
- package/dist/components/auth/flow/AuthOptionFactory.js.map +1 -1
- package/dist/components/common/LanguageSwitcher/BaseLanguageSwitcher.js +1 -1
- package/dist/components/{admin → management}/AgentCreate/AgentCreate.d.ts +2 -1
- package/dist/components/management/AgentCreate/AgentCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentCreate/AgentCreate.js +8 -7
- package/dist/components/management/AgentCreate/AgentCreate.js.map +1 -0
- package/dist/components/management/AgentCreate/BaseAgentCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentCreate/BaseAgentCreate.js +1 -1
- package/dist/components/management/AgentCreate/BaseAgentCreate.js.map +1 -0
- package/dist/components/management/AgentDetails/AgentDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentDetails/AgentDetails.js +1 -1
- package/dist/components/management/AgentDetails/AgentDetails.js.map +1 -0
- package/dist/components/management/AgentDetails/BaseAgentDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentDetails/BaseAgentDetails.js +1 -1
- package/dist/components/management/AgentDetails/BaseAgentDetails.js.map +1 -0
- package/dist/components/{admin → management}/AgentList/AgentList.d.ts +7 -1
- package/dist/components/management/AgentList/AgentList.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentList/AgentList.js +11 -6
- package/dist/components/management/AgentList/AgentList.js.map +1 -0
- package/dist/components/management/AgentList/BaseAgentList.d.ts.map +1 -0
- package/dist/components/{admin → management}/AgentList/BaseAgentList.js +1 -1
- package/dist/components/management/AgentList/BaseAgentList.js.map +1 -0
- package/dist/components/{admin → management}/ApplicationCreate/ApplicationCreate.d.ts +2 -1
- package/dist/components/management/ApplicationCreate/ApplicationCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationCreate/ApplicationCreate.js +10 -5
- package/dist/components/management/ApplicationCreate/ApplicationCreate.js.map +1 -0
- package/dist/components/management/ApplicationCreate/BaseApplicationCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationCreate/BaseApplicationCreate.js +1 -1
- package/dist/components/management/ApplicationCreate/BaseApplicationCreate.js.map +1 -0
- package/dist/components/management/ApplicationDetails/ApplicationDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationDetails/ApplicationDetails.js +1 -1
- package/dist/components/management/ApplicationDetails/ApplicationDetails.js.map +1 -0
- package/dist/components/management/ApplicationDetails/BaseApplicationDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationDetails/BaseApplicationDetails.js +1 -1
- package/dist/components/management/ApplicationDetails/BaseApplicationDetails.js.map +1 -0
- package/dist/components/{admin → management}/ApplicationList/ApplicationList.d.ts +7 -1
- package/dist/components/management/ApplicationList/ApplicationList.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationList/ApplicationList.js +9 -4
- package/dist/components/management/ApplicationList/ApplicationList.js.map +1 -0
- package/dist/components/management/ApplicationList/BaseApplicationList.d.ts.map +1 -0
- package/dist/components/{admin → management}/ApplicationList/BaseApplicationList.js +1 -1
- package/dist/components/management/ApplicationList/BaseApplicationList.js.map +1 -0
- package/dist/components/management/GroupCreate/BaseGroupCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupCreate/BaseGroupCreate.js +1 -1
- package/dist/components/management/GroupCreate/BaseGroupCreate.js.map +1 -0
- package/dist/components/management/GroupCreate/GroupCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupCreate/GroupCreate.js +1 -1
- package/dist/components/management/GroupCreate/GroupCreate.js.map +1 -0
- package/dist/components/management/GroupDetails/BaseGroupDetails.d.ts +47 -0
- package/dist/components/management/GroupDetails/BaseGroupDetails.d.ts.map +1 -0
- package/dist/components/management/GroupDetails/BaseGroupDetails.js +84 -0
- package/dist/components/management/GroupDetails/BaseGroupDetails.js.map +1 -0
- package/dist/components/management/GroupDetails/GroupDetails.d.ts +37 -0
- package/dist/components/management/GroupDetails/GroupDetails.d.ts.map +1 -0
- package/dist/components/management/GroupDetails/GroupDetails.js +57 -0
- package/dist/components/management/GroupDetails/GroupDetails.js.map +1 -0
- package/dist/components/management/GroupList/BaseGroupList.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupList/BaseGroupList.js +1 -1
- package/dist/components/management/GroupList/BaseGroupList.js.map +1 -0
- package/dist/components/management/GroupList/GroupList.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupList/GroupList.js +1 -1
- package/dist/components/management/GroupList/GroupList.js.map +1 -0
- package/dist/components/management/GroupMembers/BaseGroupMembers.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupMembers/BaseGroupMembers.js +1 -1
- package/dist/components/management/GroupMembers/BaseGroupMembers.js.map +1 -0
- package/dist/components/management/GroupMembers/GroupMembers.d.ts.map +1 -0
- package/dist/components/{admin → management}/GroupMembers/GroupMembers.js +1 -1
- package/dist/components/management/GroupMembers/GroupMembers.js.map +1 -0
- package/dist/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.d.ts +85 -0
- package/dist/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.js +137 -0
- package/dist/components/management/OrganizationUnitCreate/BaseOrganizationUnitCreate.js.map +1 -0
- package/dist/components/management/OrganizationUnitCreate/OrganizationUnitCreate.d.ts +21 -0
- package/dist/components/management/OrganizationUnitCreate/OrganizationUnitCreate.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitCreate/OrganizationUnitCreate.js +79 -0
- package/dist/components/management/OrganizationUnitCreate/OrganizationUnitCreate.js.map +1 -0
- package/dist/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.d.ts +105 -0
- package/dist/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.js +273 -0
- package/dist/components/management/OrganizationUnitDetails/BaseOrganizationUnitDetails.js.map +1 -0
- package/dist/components/management/OrganizationUnitDetails/OrganizationUnitDetails.d.ts +42 -0
- package/dist/components/management/OrganizationUnitDetails/OrganizationUnitDetails.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitDetails/OrganizationUnitDetails.js +139 -0
- package/dist/components/management/OrganizationUnitDetails/OrganizationUnitDetails.js.map +1 -0
- package/dist/components/management/OrganizationUnitList/BaseOrganizationUnitList.d.ts +54 -0
- package/dist/components/management/OrganizationUnitList/BaseOrganizationUnitList.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitList/BaseOrganizationUnitList.js +76 -0
- package/dist/components/management/OrganizationUnitList/BaseOrganizationUnitList.js.map +1 -0
- package/dist/components/management/OrganizationUnitList/OrganizationUnitList.d.ts +19 -0
- package/dist/components/management/OrganizationUnitList/OrganizationUnitList.d.ts.map +1 -0
- package/dist/components/management/OrganizationUnitList/OrganizationUnitList.js +65 -0
- package/dist/components/management/OrganizationUnitList/OrganizationUnitList.js.map +1 -0
- package/dist/components/management/ProjectCreate/BaseProjectCreate.d.ts +60 -0
- package/dist/components/management/ProjectCreate/BaseProjectCreate.d.ts.map +1 -0
- package/dist/components/management/ProjectCreate/BaseProjectCreate.js +113 -0
- package/dist/components/management/ProjectCreate/BaseProjectCreate.js.map +1 -0
- package/dist/components/management/ProjectCreate/ProjectCreate.d.ts +20 -0
- package/dist/components/management/ProjectCreate/ProjectCreate.d.ts.map +1 -0
- package/dist/components/management/ProjectCreate/ProjectCreate.js +40 -0
- package/dist/components/management/ProjectCreate/ProjectCreate.js.map +1 -0
- package/dist/components/management/ProjectDetails/BaseProjectDetails.d.ts +60 -0
- package/dist/components/management/ProjectDetails/BaseProjectDetails.d.ts.map +1 -0
- package/dist/components/management/ProjectDetails/BaseProjectDetails.js +169 -0
- package/dist/components/management/ProjectDetails/BaseProjectDetails.js.map +1 -0
- package/dist/components/management/ProjectDetails/ProjectDetails.d.ts +36 -0
- package/dist/components/management/ProjectDetails/ProjectDetails.d.ts.map +1 -0
- package/dist/components/management/ProjectDetails/ProjectDetails.js +65 -0
- package/dist/components/management/ProjectDetails/ProjectDetails.js.map +1 -0
- package/dist/components/management/ProjectList/BaseProjectList.d.ts +53 -0
- package/dist/components/management/ProjectList/BaseProjectList.d.ts.map +1 -0
- package/dist/components/management/ProjectList/BaseProjectList.js +76 -0
- package/dist/components/management/ProjectList/BaseProjectList.js.map +1 -0
- package/dist/components/management/ProjectList/ProjectList.d.ts +14 -0
- package/dist/components/management/ProjectList/ProjectList.d.ts.map +1 -0
- package/dist/components/management/ProjectList/ProjectList.js +47 -0
- package/dist/components/management/ProjectList/ProjectList.js.map +1 -0
- package/dist/components/management/ProjectSwitcher/BaseProjectSwitcher.d.ts +69 -0
- package/dist/components/management/ProjectSwitcher/BaseProjectSwitcher.d.ts.map +1 -0
- package/dist/components/management/ProjectSwitcher/BaseProjectSwitcher.js +55 -0
- package/dist/components/management/ProjectSwitcher/BaseProjectSwitcher.js.map +1 -0
- package/dist/components/management/ProjectSwitcher/ProjectSwitcher.d.ts +25 -0
- package/dist/components/management/ProjectSwitcher/ProjectSwitcher.d.ts.map +1 -0
- package/dist/components/management/ProjectSwitcher/ProjectSwitcher.js +68 -0
- package/dist/components/management/ProjectSwitcher/ProjectSwitcher.js.map +1 -0
- package/dist/components/management/RoleAssignments/BaseRoleAssignments.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleAssignments/BaseRoleAssignments.js +1 -1
- package/dist/components/management/RoleAssignments/BaseRoleAssignments.js.map +1 -0
- package/dist/components/management/RoleAssignments/RoleAssignments.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleAssignments/RoleAssignments.js +1 -1
- package/dist/components/management/RoleAssignments/RoleAssignments.js.map +1 -0
- package/dist/components/management/RoleCreate/BaseRoleCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleCreate/BaseRoleCreate.js +1 -1
- package/dist/components/management/RoleCreate/BaseRoleCreate.js.map +1 -0
- package/dist/components/management/RoleCreate/RoleCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleCreate/RoleCreate.js +1 -1
- package/dist/components/management/RoleCreate/RoleCreate.js.map +1 -0
- package/dist/components/management/RoleDetails/BaseRoleDetails.d.ts +51 -0
- package/dist/components/management/RoleDetails/BaseRoleDetails.d.ts.map +1 -0
- package/dist/components/management/RoleDetails/BaseRoleDetails.js +85 -0
- package/dist/components/management/RoleDetails/BaseRoleDetails.js.map +1 -0
- package/dist/components/management/RoleDetails/RoleDetails.d.ts +39 -0
- package/dist/components/management/RoleDetails/RoleDetails.d.ts.map +1 -0
- package/dist/components/management/RoleDetails/RoleDetails.js +65 -0
- package/dist/components/management/RoleDetails/RoleDetails.js.map +1 -0
- package/dist/components/management/RoleList/BaseRoleList.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleList/BaseRoleList.js +1 -1
- package/dist/components/management/RoleList/BaseRoleList.js.map +1 -0
- package/dist/components/management/RoleList/RoleList.d.ts.map +1 -0
- package/dist/components/{admin → management}/RoleList/RoleList.js +1 -1
- package/dist/components/management/RoleList/RoleList.js.map +1 -0
- package/dist/components/management/RolePermissions/BaseRolePermissions.d.ts +104 -0
- package/dist/components/management/RolePermissions/BaseRolePermissions.d.ts.map +1 -0
- package/dist/components/management/RolePermissions/BaseRolePermissions.js +178 -0
- package/dist/components/management/RolePermissions/BaseRolePermissions.js.map +1 -0
- package/dist/components/management/RolePermissions/RolePermissions.d.ts +29 -0
- package/dist/components/management/RolePermissions/RolePermissions.d.ts.map +1 -0
- package/dist/components/management/RolePermissions/RolePermissions.js +108 -0
- package/dist/components/management/RolePermissions/RolePermissions.js.map +1 -0
- package/dist/components/management/SharingPolicies/BaseSharingPolicies.d.ts +124 -0
- package/dist/components/management/SharingPolicies/BaseSharingPolicies.d.ts.map +1 -0
- package/dist/components/management/SharingPolicies/BaseSharingPolicies.js +304 -0
- package/dist/components/management/SharingPolicies/BaseSharingPolicies.js.map +1 -0
- package/dist/components/management/SharingPolicies/SharingPolicies.d.ts +36 -0
- package/dist/components/management/SharingPolicies/SharingPolicies.d.ts.map +1 -0
- package/dist/components/management/SharingPolicies/SharingPolicies.js +122 -0
- package/dist/components/management/SharingPolicies/SharingPolicies.js.map +1 -0
- package/dist/components/management/UserCreate/BaseUserCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserCreate/BaseUserCreate.js +1 -1
- package/dist/components/management/UserCreate/BaseUserCreate.js.map +1 -0
- package/dist/components/management/UserCreate/UserCreate.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserCreate/UserCreate.js +1 -1
- package/dist/components/management/UserCreate/UserCreate.js.map +1 -0
- package/dist/components/management/UserCreate/userCreateFields.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserCreate/userCreateFields.js +1 -1
- package/dist/components/management/UserCreate/userCreateFields.js.map +1 -0
- package/dist/components/management/UserDetails/BaseUserDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserDetails/BaseUserDetails.js +1 -1
- package/dist/components/management/UserDetails/BaseUserDetails.js.map +1 -0
- package/dist/components/management/UserDetails/UserDetails.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserDetails/UserDetails.js +1 -1
- package/dist/components/management/UserDetails/UserDetails.js.map +1 -0
- package/dist/components/management/UserList/BaseUserList.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserList/BaseUserList.js +1 -1
- package/dist/components/management/UserList/BaseUserList.js.map +1 -0
- package/dist/components/management/UserList/UserList.d.ts.map +1 -0
- package/dist/components/{admin → management}/UserList/UserList.js +1 -1
- package/dist/components/management/UserList/UserList.js.map +1 -0
- package/dist/components/management/shared/AccountLifecycleParts.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AccountLifecycleParts.js +1 -1
- package/dist/components/management/shared/AccountLifecycleParts.js.map +1 -0
- package/dist/components/management/shared/AdminListRenderProps.d.ts.map +1 -0
- package/dist/components/management/shared/AdminParts.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AdminParts.js +1 -1
- package/dist/components/management/shared/AdminParts.js.map +1 -0
- package/dist/components/management/shared/AdminParts.styles.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AdminParts.styles.js +1 -1
- package/dist/components/management/shared/AdminParts.styles.js.map +1 -0
- package/dist/components/management/shared/AdminSearch.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AdminSearch.js +1 -1
- package/dist/components/management/shared/AdminSearch.js.map +1 -0
- package/dist/components/management/shared/AdminSection.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AdminSection.js +1 -1
- package/dist/components/management/shared/AdminSection.js.map +1 -0
- package/dist/components/management/shared/AdminSection.styles.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/AdminSection.styles.js +1 -1
- package/dist/components/management/shared/AdminSection.styles.js.map +1 -0
- package/dist/components/management/shared/ApplicationFormFields.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/ApplicationFormFields.js +1 -1
- package/dist/components/management/shared/ApplicationFormFields.js.map +1 -0
- package/dist/components/management/shared/ClientSecretNotice.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/ClientSecretNotice.js +1 -1
- package/dist/components/management/shared/ClientSecretNotice.js.map +1 -0
- package/dist/components/management/shared/IdentityPicker.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/IdentityPicker.js +1 -1
- package/dist/components/management/shared/IdentityPicker.js.map +1 -0
- package/dist/components/management/shared/formatTimestamp.d.ts +9 -0
- package/dist/components/management/shared/formatTimestamp.d.ts.map +1 -0
- package/dist/components/management/shared/formatTimestamp.js +17 -0
- package/dist/components/management/shared/formatTimestamp.js.map +1 -0
- package/dist/components/management/shared/useAdminPartStyles.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/useAdminPartStyles.js +1 -1
- package/dist/components/management/shared/useAdminPartStyles.js.map +1 -0
- package/dist/components/management/shared/useDefaultOuId.d.ts.map +1 -0
- package/dist/components/{admin → management}/shared/useDefaultOuId.js +1 -1
- package/dist/components/management/shared/useDefaultOuId.js.map +1 -0
- package/dist/components/management/shared/useProjectPlacement.d.ts +26 -0
- package/dist/components/management/shared/useProjectPlacement.d.ts.map +1 -0
- package/dist/components/management/shared/useProjectPlacement.js +23 -0
- package/dist/components/management/shared/useProjectPlacement.js.map +1 -0
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts.map +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts +27 -1
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.js +5 -0
- package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.js +42 -2
- package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -1
- package/dist/contexts/ThunderID/useCurrentProjectState.d.ts +26 -0
- package/dist/contexts/ThunderID/useCurrentProjectState.d.ts.map +1 -0
- package/dist/contexts/ThunderID/useCurrentProjectState.js +30 -0
- package/dist/contexts/ThunderID/useCurrentProjectState.js.map +1 -0
- package/dist/hooks/management/useManagementEndpoint.d.ts +1 -1
- package/dist/hooks/management/useManagementEndpoint.d.ts.map +1 -1
- package/dist/hooks/management/useManagementEndpoint.js.map +1 -1
- package/dist/index.d.ts +127 -70
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +62 -34
- package/dist/utils/flowTransformer.d.ts +7 -0
- package/dist/utils/flowTransformer.d.ts.map +1 -1
- package/dist/utils/flowTransformer.js +9 -1
- package/dist/utils/flowTransformer.js.map +1 -1
- package/dist/utils/getOrganizationUnitSwitchErrorKey.d.ts +11 -0
- package/dist/utils/getOrganizationUnitSwitchErrorKey.d.ts.map +1 -0
- package/dist/utils/getOrganizationUnitSwitchErrorKey.js +22 -0
- package/dist/utils/getOrganizationUnitSwitchErrorKey.js.map +1 -0
- package/package.json +2 -2
- package/dist/cjs/components/admin/AgentCreate/AgentCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/AgentCreate/BaseAgentCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/AgentDetails/AgentDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/AgentDetails/BaseAgentDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/AgentList/AgentList.cjs.map +0 -1
- package/dist/cjs/components/admin/AgentList/BaseAgentList.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationCreate/ApplicationCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationCreate/BaseApplicationCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationDetails/ApplicationDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationDetails/BaseApplicationDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationList/ApplicationList.cjs.map +0 -1
- package/dist/cjs/components/admin/ApplicationList/BaseApplicationList.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupCreate/BaseGroupCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupCreate/GroupCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupList/BaseGroupList.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupList/GroupList.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupMembers/BaseGroupMembers.cjs.map +0 -1
- package/dist/cjs/components/admin/GroupMembers/GroupMembers.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleAssignments/BaseRoleAssignments.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleAssignments/RoleAssignments.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleCreate/BaseRoleCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleCreate/RoleCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleList/BaseRoleList.cjs.map +0 -1
- package/dist/cjs/components/admin/RoleList/RoleList.cjs.map +0 -1
- package/dist/cjs/components/admin/RolePermissions/BaseRolePermissions.cjs +0 -69
- package/dist/cjs/components/admin/RolePermissions/BaseRolePermissions.cjs.map +0 -1
- package/dist/cjs/components/admin/RolePermissions/RolePermissions.cjs +0 -40
- package/dist/cjs/components/admin/RolePermissions/RolePermissions.cjs.map +0 -1
- package/dist/cjs/components/admin/UserCreate/BaseUserCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/UserCreate/UserCreate.cjs.map +0 -1
- package/dist/cjs/components/admin/UserCreate/userCreateFields.cjs.map +0 -1
- package/dist/cjs/components/admin/UserDetails/BaseUserDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/UserDetails/UserDetails.cjs.map +0 -1
- package/dist/cjs/components/admin/UserList/BaseUserList.cjs.map +0 -1
- package/dist/cjs/components/admin/UserList/UserList.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AccountLifecycleParts.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AdminParts.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AdminParts.styles.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AdminSearch.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AdminSection.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/AdminSection.styles.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/ApplicationFormFields.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/ClientSecretNotice.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/IdentityPicker.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/useAdminPartStyles.cjs.map +0 -1
- package/dist/cjs/components/admin/shared/useDefaultOuId.cjs.map +0 -1
- package/dist/components/admin/AgentCreate/AgentCreate.d.ts.map +0 -1
- package/dist/components/admin/AgentCreate/AgentCreate.js.map +0 -1
- package/dist/components/admin/AgentCreate/BaseAgentCreate.d.ts.map +0 -1
- package/dist/components/admin/AgentCreate/BaseAgentCreate.js.map +0 -1
- package/dist/components/admin/AgentDetails/AgentDetails.d.ts.map +0 -1
- package/dist/components/admin/AgentDetails/AgentDetails.js.map +0 -1
- package/dist/components/admin/AgentDetails/BaseAgentDetails.d.ts.map +0 -1
- package/dist/components/admin/AgentDetails/BaseAgentDetails.js.map +0 -1
- package/dist/components/admin/AgentList/AgentList.d.ts.map +0 -1
- package/dist/components/admin/AgentList/AgentList.js.map +0 -1
- package/dist/components/admin/AgentList/BaseAgentList.d.ts.map +0 -1
- package/dist/components/admin/AgentList/BaseAgentList.js.map +0 -1
- package/dist/components/admin/ApplicationCreate/ApplicationCreate.d.ts.map +0 -1
- package/dist/components/admin/ApplicationCreate/ApplicationCreate.js.map +0 -1
- package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.d.ts.map +0 -1
- package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.js.map +0 -1
- package/dist/components/admin/ApplicationDetails/ApplicationDetails.d.ts.map +0 -1
- package/dist/components/admin/ApplicationDetails/ApplicationDetails.js.map +0 -1
- package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.d.ts.map +0 -1
- package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.js.map +0 -1
- package/dist/components/admin/ApplicationList/ApplicationList.d.ts.map +0 -1
- package/dist/components/admin/ApplicationList/ApplicationList.js.map +0 -1
- package/dist/components/admin/ApplicationList/BaseApplicationList.d.ts.map +0 -1
- package/dist/components/admin/ApplicationList/BaseApplicationList.js.map +0 -1
- package/dist/components/admin/GroupCreate/BaseGroupCreate.d.ts.map +0 -1
- package/dist/components/admin/GroupCreate/BaseGroupCreate.js.map +0 -1
- package/dist/components/admin/GroupCreate/GroupCreate.d.ts.map +0 -1
- package/dist/components/admin/GroupCreate/GroupCreate.js.map +0 -1
- package/dist/components/admin/GroupList/BaseGroupList.d.ts.map +0 -1
- package/dist/components/admin/GroupList/BaseGroupList.js.map +0 -1
- package/dist/components/admin/GroupList/GroupList.d.ts.map +0 -1
- package/dist/components/admin/GroupList/GroupList.js.map +0 -1
- package/dist/components/admin/GroupMembers/BaseGroupMembers.d.ts.map +0 -1
- package/dist/components/admin/GroupMembers/BaseGroupMembers.js.map +0 -1
- package/dist/components/admin/GroupMembers/GroupMembers.d.ts.map +0 -1
- package/dist/components/admin/GroupMembers/GroupMembers.js.map +0 -1
- package/dist/components/admin/RoleAssignments/BaseRoleAssignments.d.ts.map +0 -1
- package/dist/components/admin/RoleAssignments/BaseRoleAssignments.js.map +0 -1
- package/dist/components/admin/RoleAssignments/RoleAssignments.d.ts.map +0 -1
- package/dist/components/admin/RoleAssignments/RoleAssignments.js.map +0 -1
- package/dist/components/admin/RoleCreate/BaseRoleCreate.d.ts.map +0 -1
- package/dist/components/admin/RoleCreate/BaseRoleCreate.js.map +0 -1
- package/dist/components/admin/RoleCreate/RoleCreate.d.ts.map +0 -1
- package/dist/components/admin/RoleCreate/RoleCreate.js.map +0 -1
- package/dist/components/admin/RoleList/BaseRoleList.d.ts.map +0 -1
- package/dist/components/admin/RoleList/BaseRoleList.js.map +0 -1
- package/dist/components/admin/RoleList/RoleList.d.ts.map +0 -1
- package/dist/components/admin/RoleList/RoleList.js.map +0 -1
- package/dist/components/admin/RolePermissions/BaseRolePermissions.d.ts +0 -42
- package/dist/components/admin/RolePermissions/BaseRolePermissions.d.ts.map +0 -1
- package/dist/components/admin/RolePermissions/BaseRolePermissions.js +0 -67
- package/dist/components/admin/RolePermissions/BaseRolePermissions.js.map +0 -1
- package/dist/components/admin/RolePermissions/RolePermissions.d.ts +0 -16
- package/dist/components/admin/RolePermissions/RolePermissions.d.ts.map +0 -1
- package/dist/components/admin/RolePermissions/RolePermissions.js +0 -37
- package/dist/components/admin/RolePermissions/RolePermissions.js.map +0 -1
- package/dist/components/admin/UserCreate/BaseUserCreate.d.ts.map +0 -1
- package/dist/components/admin/UserCreate/BaseUserCreate.js.map +0 -1
- package/dist/components/admin/UserCreate/UserCreate.d.ts.map +0 -1
- package/dist/components/admin/UserCreate/UserCreate.js.map +0 -1
- package/dist/components/admin/UserCreate/userCreateFields.d.ts.map +0 -1
- package/dist/components/admin/UserCreate/userCreateFields.js.map +0 -1
- package/dist/components/admin/UserDetails/BaseUserDetails.d.ts.map +0 -1
- package/dist/components/admin/UserDetails/BaseUserDetails.js.map +0 -1
- package/dist/components/admin/UserDetails/UserDetails.d.ts.map +0 -1
- package/dist/components/admin/UserDetails/UserDetails.js.map +0 -1
- package/dist/components/admin/UserList/BaseUserList.d.ts.map +0 -1
- package/dist/components/admin/UserList/BaseUserList.js.map +0 -1
- package/dist/components/admin/UserList/UserList.d.ts.map +0 -1
- package/dist/components/admin/UserList/UserList.js.map +0 -1
- package/dist/components/admin/shared/AccountLifecycleParts.d.ts.map +0 -1
- package/dist/components/admin/shared/AccountLifecycleParts.js.map +0 -1
- package/dist/components/admin/shared/AdminListRenderProps.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminParts.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminParts.js.map +0 -1
- package/dist/components/admin/shared/AdminParts.styles.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminParts.styles.js.map +0 -1
- package/dist/components/admin/shared/AdminSearch.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminSearch.js.map +0 -1
- package/dist/components/admin/shared/AdminSection.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminSection.js.map +0 -1
- package/dist/components/admin/shared/AdminSection.styles.d.ts.map +0 -1
- package/dist/components/admin/shared/AdminSection.styles.js.map +0 -1
- package/dist/components/admin/shared/ApplicationFormFields.d.ts.map +0 -1
- package/dist/components/admin/shared/ApplicationFormFields.js.map +0 -1
- package/dist/components/admin/shared/ClientSecretNotice.d.ts.map +0 -1
- package/dist/components/admin/shared/ClientSecretNotice.js.map +0 -1
- package/dist/components/admin/shared/IdentityPicker.d.ts.map +0 -1
- package/dist/components/admin/shared/IdentityPicker.js.map +0 -1
- package/dist/components/admin/shared/useAdminPartStyles.d.ts.map +0 -1
- package/dist/components/admin/shared/useAdminPartStyles.js.map +0 -1
- package/dist/components/admin/shared/useDefaultOuId.d.ts.map +0 -1
- package/dist/components/admin/shared/useDefaultOuId.js.map +0 -1
- /package/dist/components/{admin → management}/AgentCreate/BaseAgentCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/AgentDetails/AgentDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/AgentDetails/BaseAgentDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/AgentList/BaseAgentList.d.ts +0 -0
- /package/dist/components/{admin → management}/ApplicationCreate/BaseApplicationCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/ApplicationDetails/ApplicationDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/ApplicationDetails/BaseApplicationDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/ApplicationList/BaseApplicationList.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupCreate/BaseGroupCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupCreate/GroupCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupList/BaseGroupList.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupList/GroupList.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupMembers/BaseGroupMembers.d.ts +0 -0
- /package/dist/components/{admin → management}/GroupMembers/GroupMembers.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleAssignments/BaseRoleAssignments.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleAssignments/RoleAssignments.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleCreate/BaseRoleCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleCreate/RoleCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleList/BaseRoleList.d.ts +0 -0
- /package/dist/components/{admin → management}/RoleList/RoleList.d.ts +0 -0
- /package/dist/components/{admin → management}/UserCreate/BaseUserCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/UserCreate/UserCreate.d.ts +0 -0
- /package/dist/components/{admin → management}/UserCreate/userCreateFields.d.ts +0 -0
- /package/dist/components/{admin → management}/UserDetails/BaseUserDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/UserDetails/UserDetails.d.ts +0 -0
- /package/dist/components/{admin → management}/UserList/BaseUserList.d.ts +0 -0
- /package/dist/components/{admin → management}/UserList/UserList.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AccountLifecycleParts.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminListRenderProps.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminParts.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminParts.styles.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminSearch.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminSection.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/AdminSection.styles.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/ApplicationFormFields.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/ClientSecretNotice.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/IdentityPicker.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/useAdminPartStyles.d.ts +0 -0
- /package/dist/components/{admin → management}/shared/useDefaultOuId.d.ts +0 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { Preferences, ResolvedOverlay, SharingPolicy, SharingPolicyRequest, SharingPolicyUpdateRequest } from '@thunderid/browser';
|
|
2
|
+
import { FC, ReactNode } from 'react';
|
|
3
|
+
import { DataTableColumn } from '../../primitives/DataTable/DataTable';
|
|
4
|
+
/**
|
|
5
|
+
* What {@link BaseSharingPolicies} hands its `children` render function, so the policies can be shown with any UI.
|
|
6
|
+
*/
|
|
7
|
+
export interface BaseSharingPoliciesRenderProps {
|
|
8
|
+
/**
|
|
9
|
+
* The columns the default table shows, with translated headers and cell renderers.
|
|
10
|
+
*/
|
|
11
|
+
columns: DataTableColumn<SharingPolicy>[];
|
|
12
|
+
/**
|
|
13
|
+
* Describes, in translated words, which organization units a policy reaches: one line per section.
|
|
14
|
+
*/
|
|
15
|
+
describeScope: (policy: SharingPolicy) => string[];
|
|
16
|
+
/**
|
|
17
|
+
* A translated message when the policies could not be loaded, or `null`.
|
|
18
|
+
*/
|
|
19
|
+
error: string | null;
|
|
20
|
+
isLoading: boolean;
|
|
21
|
+
isLoadingOverlay: boolean;
|
|
22
|
+
isSubmitting: boolean;
|
|
23
|
+
limit: number;
|
|
24
|
+
/**
|
|
25
|
+
* A translated message when a create, update or delete failed, or `null`.
|
|
26
|
+
*/
|
|
27
|
+
mutationError: string | null;
|
|
28
|
+
offset: number;
|
|
29
|
+
/**
|
|
30
|
+
* Creates a policy. Undefined unless editing is allowed.
|
|
31
|
+
*/
|
|
32
|
+
onCreate?: (request: SharingPolicyRequest) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Deletes a policy; ask for confirmation first. Undefined unless editing is allowed. Does nothing for a
|
|
35
|
+
* read-only policy.
|
|
36
|
+
*/
|
|
37
|
+
onDelete?: (policy: SharingPolicy) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Shows the page that starts at `offset`. Undefined when the list is not paginated.
|
|
40
|
+
*/
|
|
41
|
+
onPageChange?: (offset: number) => void;
|
|
42
|
+
/**
|
|
43
|
+
* Replaces a policy's sections. Undefined unless editing is allowed. Does nothing for a read-only policy.
|
|
44
|
+
*/
|
|
45
|
+
onUpdate?: (policy: SharingPolicy, request: SharingPolicyUpdateRequest) => void;
|
|
46
|
+
/**
|
|
47
|
+
* The overlay rules that apply in `overlayOuId`, when one was given.
|
|
48
|
+
*/
|
|
49
|
+
overlay?: ResolvedOverlay;
|
|
50
|
+
overlayError: string | null;
|
|
51
|
+
overlayOuId?: string;
|
|
52
|
+
policies: SharingPolicy[];
|
|
53
|
+
totalResults: number;
|
|
54
|
+
}
|
|
55
|
+
export interface BaseSharingPoliciesProps {
|
|
56
|
+
/**
|
|
57
|
+
* Controls rendered next to the title.
|
|
58
|
+
*/
|
|
59
|
+
actions?: ReactNode;
|
|
60
|
+
/**
|
|
61
|
+
* Renders custom UI in place of the default view. Receives the policies, the paging, the loading and
|
|
62
|
+
* error state, the overlay rules, and the create, update and delete handlers when editing is allowed.
|
|
63
|
+
*/
|
|
64
|
+
children?: (props: BaseSharingPoliciesRenderProps) => ReactNode;
|
|
65
|
+
className?: string;
|
|
66
|
+
description?: string;
|
|
67
|
+
/**
|
|
68
|
+
* A translated message when the policies could not be loaded, or `null`.
|
|
69
|
+
*/
|
|
70
|
+
error?: string | null;
|
|
71
|
+
isLoading?: boolean;
|
|
72
|
+
isLoadingOverlay?: boolean;
|
|
73
|
+
isSubmitting?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Page size.
|
|
76
|
+
* @default 20
|
|
77
|
+
*/
|
|
78
|
+
limit?: number;
|
|
79
|
+
/**
|
|
80
|
+
* A translated message when a create, update or delete failed, or `null`.
|
|
81
|
+
*/
|
|
82
|
+
mutationError?: string | null;
|
|
83
|
+
offset?: number;
|
|
84
|
+
/**
|
|
85
|
+
* Creates a policy. The add action is hidden when omitted.
|
|
86
|
+
*/
|
|
87
|
+
onCreate?: (request: SharingPolicyRequest) => void;
|
|
88
|
+
/**
|
|
89
|
+
* Deletes a policy, after the user confirms. The delete action is hidden when omitted.
|
|
90
|
+
*/
|
|
91
|
+
onDelete?: (policy: SharingPolicy) => void;
|
|
92
|
+
/**
|
|
93
|
+
* Called with the offset of the page to show. Pagination is hidden when omitted.
|
|
94
|
+
*/
|
|
95
|
+
onPageChange?: (offset: number) => void;
|
|
96
|
+
/**
|
|
97
|
+
* Replaces a policy's sections. The edit action is hidden when omitted.
|
|
98
|
+
*/
|
|
99
|
+
onUpdate?: (policy: SharingPolicy, request: SharingPolicyUpdateRequest) => void;
|
|
100
|
+
/**
|
|
101
|
+
* The overlay rules that apply in `overlayOuId`.
|
|
102
|
+
*/
|
|
103
|
+
overlay?: ResolvedOverlay;
|
|
104
|
+
overlayError?: string | null;
|
|
105
|
+
/**
|
|
106
|
+
* The organization unit whose overlay rules are shown, read only.
|
|
107
|
+
*/
|
|
108
|
+
overlayOuId?: string;
|
|
109
|
+
policies: SharingPolicy[];
|
|
110
|
+
preferences?: Preferences;
|
|
111
|
+
/**
|
|
112
|
+
* Heading of the view. Pass an empty string to hide it.
|
|
113
|
+
*/
|
|
114
|
+
title?: string;
|
|
115
|
+
totalResults?: number;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Lists the sharing policies of one resource (a user, an application, a role or a flow) with the
|
|
119
|
+
* organization units each reaches, lets the caller add, edit and delete them, and shows the overlay
|
|
120
|
+
* rules that apply in one unit. Holds no data of its own: pass the policies and handle the changes.
|
|
121
|
+
*/
|
|
122
|
+
declare const BaseSharingPolicies: FC<BaseSharingPoliciesProps>;
|
|
123
|
+
export default BaseSharingPolicies;
|
|
124
|
+
//# sourceMappingURL=BaseSharingPolicies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseSharingPolicies.d.ts","sourceRoot":"","sources":["../../../../src/components/management/SharingPolicies/BaseSharingPolicies.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
import useTranslation_default from "../../../hooks/useTranslation.js";
|
|
2
|
+
import Spinner_default from "../../primitives/Spinner/Spinner.js";
|
|
3
|
+
import Button_default from "../../primitives/Button/Button.js";
|
|
4
|
+
import Alert_default from "../../primitives/Alert/Alert.js";
|
|
5
|
+
import TextField_default from "../../primitives/TextField/TextField.js";
|
|
6
|
+
import Select_default from "../../primitives/Select/Select.js";
|
|
7
|
+
import DataTable_default from "../../primitives/DataTable/DataTable.js";
|
|
8
|
+
import useAdminPartStyles_default from "../shared/useAdminPartStyles.js";
|
|
9
|
+
import AdminSection_default from "../shared/AdminSection.js";
|
|
10
|
+
import { ConfirmButton, DetailList, Panel } from "../shared/AdminParts.js";
|
|
11
|
+
import { describeSharingPolicyScope, isSharingPolicyFormValid, toSharingPolicyFormValues, toSharingPolicyRequest, toSharingPolicyUpdateRequest } from "@thunderid/browser";
|
|
12
|
+
import { useState } from "react";
|
|
13
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
|
|
15
|
+
//#region src/components/management/SharingPolicies/BaseSharingPolicies.tsx
|
|
16
|
+
const isOwned = (overlay) => Boolean(overlay.isOwned ?? overlay.isOwnedByOU ?? overlay.owned);
|
|
17
|
+
/**
|
|
18
|
+
* Lists the sharing policies of one resource (a user, an application, a role or a flow) with the
|
|
19
|
+
* organization units each reaches, lets the caller add, edit and delete them, and shows the overlay
|
|
20
|
+
* rules that apply in one unit. Holds no data of its own: pass the policies and handle the changes.
|
|
21
|
+
*/
|
|
22
|
+
const BaseSharingPolicies = ({ actions, children, className, description, error = null, isLoading = false, isLoadingOverlay = false, isSubmitting = false, limit = 20, mutationError = null, offset = 0, onCreate, onDelete, onPageChange, onUpdate, overlay, overlayError = null, overlayOuId, policies, preferences, title, totalResults }) => {
|
|
23
|
+
const { t } = useTranslation_default(preferences?.i18n);
|
|
24
|
+
const styles = useAdminPartStyles_default();
|
|
25
|
+
const [draft, setDraft] = useState(null);
|
|
26
|
+
const describeScope = (policy) => describeSharingPolicyScope(t, policy);
|
|
27
|
+
const canChange = (policy) => !policy.isReadOnly;
|
|
28
|
+
const columns = [
|
|
29
|
+
{
|
|
30
|
+
header: t("admin.sharing.columns.scope"),
|
|
31
|
+
id: "scope",
|
|
32
|
+
render: (policy) => /* @__PURE__ */ jsx("span", {
|
|
33
|
+
style: {
|
|
34
|
+
display: "flex",
|
|
35
|
+
flexDirection: "column"
|
|
36
|
+
},
|
|
37
|
+
children: describeScope(policy).map((line) => /* @__PURE__ */ jsx("span", { children: line }, line))
|
|
38
|
+
})
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
header: t("admin.sharing.columns.stage"),
|
|
42
|
+
id: "stage",
|
|
43
|
+
render: (policy) => policy.stage === "reshare" ? t("admin.sharing.stage.reshare") : t("admin.sharing.stage.share")
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
header: t("admin.sharing.columns.version"),
|
|
47
|
+
id: "version",
|
|
48
|
+
render: (policy) => policy.version ?? ""
|
|
49
|
+
}
|
|
50
|
+
];
|
|
51
|
+
if (onUpdate || onDelete) columns.push({
|
|
52
|
+
header: t("admin.common.columns.actions"),
|
|
53
|
+
id: "actions",
|
|
54
|
+
render: (policy) => canChange(policy) ? /* @__PURE__ */ jsxs("span", {
|
|
55
|
+
className: styles["row"],
|
|
56
|
+
children: [onUpdate && /* @__PURE__ */ jsx(Button_default, {
|
|
57
|
+
variant: "outline",
|
|
58
|
+
size: "small",
|
|
59
|
+
disabled: isSubmitting,
|
|
60
|
+
onClick: () => setDraft({
|
|
61
|
+
policy,
|
|
62
|
+
values: toSharingPolicyFormValues(policy)
|
|
63
|
+
}),
|
|
64
|
+
children: t("admin.sharing.actions.edit")
|
|
65
|
+
}), onDelete && /* @__PURE__ */ jsx(ConfirmButton, {
|
|
66
|
+
confirmText: t("admin.sharing.delete.confirm"),
|
|
67
|
+
isLoading: isSubmitting,
|
|
68
|
+
onConfirm: () => onDelete(policy),
|
|
69
|
+
children: t("admin.sharing.actions.delete")
|
|
70
|
+
})]
|
|
71
|
+
}) : /* @__PURE__ */ jsx("span", {
|
|
72
|
+
className: styles["muted"],
|
|
73
|
+
children: t("admin.sharing.read_only")
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
if (children) return /* @__PURE__ */ jsx("div", {
|
|
77
|
+
className,
|
|
78
|
+
children: children({
|
|
79
|
+
columns,
|
|
80
|
+
describeScope,
|
|
81
|
+
error,
|
|
82
|
+
isLoading,
|
|
83
|
+
isLoadingOverlay,
|
|
84
|
+
isSubmitting,
|
|
85
|
+
limit,
|
|
86
|
+
mutationError,
|
|
87
|
+
offset,
|
|
88
|
+
onCreate,
|
|
89
|
+
onDelete: onDelete ? (policy) => {
|
|
90
|
+
if (canChange(policy)) onDelete(policy);
|
|
91
|
+
} : void 0,
|
|
92
|
+
onPageChange,
|
|
93
|
+
onUpdate: onUpdate ? (policy, request) => {
|
|
94
|
+
if (canChange(policy)) onUpdate(policy, request);
|
|
95
|
+
} : void 0,
|
|
96
|
+
overlay,
|
|
97
|
+
overlayError,
|
|
98
|
+
overlayOuId,
|
|
99
|
+
policies,
|
|
100
|
+
totalResults: totalResults ?? policies.length
|
|
101
|
+
})
|
|
102
|
+
});
|
|
103
|
+
const setValue = (field, value) => setDraft((previous) => previous && {
|
|
104
|
+
...previous,
|
|
105
|
+
values: {
|
|
106
|
+
...previous.values,
|
|
107
|
+
[field]: value
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
const handleSave = (event) => {
|
|
111
|
+
event.preventDefault();
|
|
112
|
+
if (!draft || !isSharingPolicyFormValid(draft.values, draft.policy)) return;
|
|
113
|
+
if (draft.policy) onUpdate?.(draft.policy, toSharingPolicyUpdateRequest(draft.values, draft.policy));
|
|
114
|
+
else onCreate?.(toSharingPolicyRequest(draft.values));
|
|
115
|
+
setDraft(null);
|
|
116
|
+
};
|
|
117
|
+
const renderForm = (current) => {
|
|
118
|
+
const { values } = current;
|
|
119
|
+
const keepsSections = Boolean(current.policy?.allUnits) || current.policy?.otherTreeRoots?.mode === "all";
|
|
120
|
+
return /* @__PURE__ */ jsx(Panel, {
|
|
121
|
+
title: current.policy ? t("admin.sharing.form.edit_title") : t("admin.sharing.form.create_title"),
|
|
122
|
+
children: /* @__PURE__ */ jsxs("form", {
|
|
123
|
+
className: styles["row"],
|
|
124
|
+
style: {
|
|
125
|
+
alignItems: "stretch",
|
|
126
|
+
flexDirection: "column"
|
|
127
|
+
},
|
|
128
|
+
onSubmit: handleSave,
|
|
129
|
+
noValidate: true,
|
|
130
|
+
children: [
|
|
131
|
+
keepsSections && /* @__PURE__ */ jsx("span", {
|
|
132
|
+
className: styles["muted"],
|
|
133
|
+
children: t("admin.sharing.form.kept_sections")
|
|
134
|
+
}),
|
|
135
|
+
/* @__PURE__ */ jsx(Select_default, {
|
|
136
|
+
name: "childUnitsMode",
|
|
137
|
+
label: t("admin.sharing.form.child_units"),
|
|
138
|
+
options: [
|
|
139
|
+
{
|
|
140
|
+
label: t("admin.sharing.form.child_units_none"),
|
|
141
|
+
value: "none"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
label: t("admin.sharing.form.child_units_all"),
|
|
145
|
+
value: "all"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
label: t("admin.sharing.form.child_units_selected"),
|
|
149
|
+
value: "selected"
|
|
150
|
+
}
|
|
151
|
+
],
|
|
152
|
+
value: values.childUnitsMode,
|
|
153
|
+
onChange: (event) => setValue("childUnitsMode", event.target.value)
|
|
154
|
+
}),
|
|
155
|
+
values.childUnitsMode === "all" && /* @__PURE__ */ jsx(TextField_default, {
|
|
156
|
+
name: "excludedOuIds",
|
|
157
|
+
label: t("admin.sharing.form.excluded_units"),
|
|
158
|
+
helperText: t("admin.sharing.form.ids_hint"),
|
|
159
|
+
value: values.excludedOuIds,
|
|
160
|
+
onChange: (event) => setValue("excludedOuIds", event.target.value)
|
|
161
|
+
}),
|
|
162
|
+
values.childUnitsMode === "selected" && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(TextField_default, {
|
|
163
|
+
name: "selectedOuIds",
|
|
164
|
+
label: t("admin.sharing.form.selected_units"),
|
|
165
|
+
helperText: t("admin.sharing.form.ids_hint"),
|
|
166
|
+
required: true,
|
|
167
|
+
value: values.selectedOuIds,
|
|
168
|
+
onChange: (event) => setValue("selectedOuIds", event.target.value)
|
|
169
|
+
}), /* @__PURE__ */ jsx(Select_default, {
|
|
170
|
+
name: "reach",
|
|
171
|
+
label: t("admin.sharing.form.reach"),
|
|
172
|
+
options: [{
|
|
173
|
+
label: t("admin.sharing.form.reach_subtree"),
|
|
174
|
+
value: "subtree"
|
|
175
|
+
}, {
|
|
176
|
+
label: t("admin.sharing.form.reach_unit"),
|
|
177
|
+
value: "unit"
|
|
178
|
+
}],
|
|
179
|
+
value: values.reach,
|
|
180
|
+
onChange: (event) => setValue("reach", event.target.value)
|
|
181
|
+
})] }),
|
|
182
|
+
current.policy?.otherTreeRoots?.mode !== "all" && /* @__PURE__ */ jsx(TextField_default, {
|
|
183
|
+
name: "otherTreeRootOuIds",
|
|
184
|
+
label: t("admin.sharing.form.other_tree_roots"),
|
|
185
|
+
helperText: t("admin.sharing.form.ids_hint"),
|
|
186
|
+
value: values.otherTreeRootOuIds,
|
|
187
|
+
onChange: (event) => setValue("otherTreeRootOuIds", event.target.value)
|
|
188
|
+
}),
|
|
189
|
+
/* @__PURE__ */ jsxs("div", {
|
|
190
|
+
className: styles["row"],
|
|
191
|
+
style: { justifyContent: "flex-end" },
|
|
192
|
+
children: [/* @__PURE__ */ jsx(Button_default, {
|
|
193
|
+
type: "button",
|
|
194
|
+
variant: "text",
|
|
195
|
+
disabled: isSubmitting,
|
|
196
|
+
onClick: () => setDraft(null),
|
|
197
|
+
children: t("admin.common.actions.cancel")
|
|
198
|
+
}), /* @__PURE__ */ jsx(Button_default, {
|
|
199
|
+
type: "submit",
|
|
200
|
+
loading: isSubmitting,
|
|
201
|
+
disabled: isSubmitting || !isSharingPolicyFormValid(values, current.policy),
|
|
202
|
+
children: t("admin.sharing.actions.save")
|
|
203
|
+
})]
|
|
204
|
+
})
|
|
205
|
+
]
|
|
206
|
+
})
|
|
207
|
+
});
|
|
208
|
+
};
|
|
209
|
+
const renderOverlay = () => {
|
|
210
|
+
if (!overlayOuId) return null;
|
|
211
|
+
let body;
|
|
212
|
+
if (isLoadingOverlay) body = /* @__PURE__ */ jsxs("span", {
|
|
213
|
+
className: styles["muted"],
|
|
214
|
+
role: "status",
|
|
215
|
+
children: [
|
|
216
|
+
/* @__PURE__ */ jsx(Spinner_default, { size: "small" }),
|
|
217
|
+
" ",
|
|
218
|
+
t("admin.common.loading")
|
|
219
|
+
]
|
|
220
|
+
});
|
|
221
|
+
else if (overlayError) body = /* @__PURE__ */ jsx(Alert_default, {
|
|
222
|
+
variant: "error",
|
|
223
|
+
role: "alert",
|
|
224
|
+
children: overlayError
|
|
225
|
+
});
|
|
226
|
+
else if (overlay) {
|
|
227
|
+
let access = t("admin.sharing.overlay.not_shared");
|
|
228
|
+
if (isOwned(overlay)) access = t("admin.sharing.overlay.owned");
|
|
229
|
+
else if (overlay.visible !== false && (overlay.policyIds?.length ?? 0) > 0) access = t("admin.sharing.overlay.shared");
|
|
230
|
+
const rules = Object.entries(overlay.rules ?? {});
|
|
231
|
+
const items = [{
|
|
232
|
+
label: t("admin.sharing.columns.scope"),
|
|
233
|
+
value: access
|
|
234
|
+
}];
|
|
235
|
+
if (overlay.policyIds?.length) items.push({
|
|
236
|
+
label: t("admin.sharing.overlay.policies"),
|
|
237
|
+
value: overlay.policyIds.join(", ")
|
|
238
|
+
});
|
|
239
|
+
rules.forEach(([field, rule]) => {
|
|
240
|
+
const parts = [
|
|
241
|
+
rule.value?.length ? t("admin.sharing.overlay.value", { values: rule.value.join(", ") }) : "",
|
|
242
|
+
rule.allowedValues?.length ? t("admin.sharing.overlay.allowed", { values: rule.allowedValues.join(", ") }) : "",
|
|
243
|
+
rule.excludedValues?.length ? t("admin.sharing.overlay.excluded", { values: rule.excludedValues.join(", ") }) : "",
|
|
244
|
+
rule.editable ? t("admin.sharing.overlay.editable") : ""
|
|
245
|
+
].filter(Boolean);
|
|
246
|
+
items.push({
|
|
247
|
+
label: field,
|
|
248
|
+
value: parts.join(" · ") || t("admin.sharing.overlay.no_rules")
|
|
249
|
+
});
|
|
250
|
+
});
|
|
251
|
+
body = /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DetailList, { items }), rules.length === 0 && /* @__PURE__ */ jsx("span", {
|
|
252
|
+
className: styles["muted"],
|
|
253
|
+
children: t("admin.sharing.overlay.no_rules")
|
|
254
|
+
})] });
|
|
255
|
+
}
|
|
256
|
+
return /* @__PURE__ */ jsx(Panel, {
|
|
257
|
+
title: t("admin.sharing.overlay.title", { unit: overlayOuId }),
|
|
258
|
+
children: body
|
|
259
|
+
});
|
|
260
|
+
};
|
|
261
|
+
return /* @__PURE__ */ jsxs(AdminSection_default, {
|
|
262
|
+
block: "sharing-policies",
|
|
263
|
+
className,
|
|
264
|
+
title: title ?? t("admin.sharing.title"),
|
|
265
|
+
description,
|
|
266
|
+
preferences,
|
|
267
|
+
actions: /* @__PURE__ */ jsxs(Fragment$1, { children: [actions, onCreate && !draft && /* @__PURE__ */ jsx(Button_default, {
|
|
268
|
+
variant: "outline",
|
|
269
|
+
size: "small",
|
|
270
|
+
disabled: isSubmitting,
|
|
271
|
+
onClick: () => setDraft({ values: toSharingPolicyFormValues() }),
|
|
272
|
+
children: t("admin.sharing.actions.create")
|
|
273
|
+
})] }),
|
|
274
|
+
children: [
|
|
275
|
+
mutationError && /* @__PURE__ */ jsx(Alert_default, {
|
|
276
|
+
variant: "error",
|
|
277
|
+
role: "alert",
|
|
278
|
+
children: mutationError
|
|
279
|
+
}),
|
|
280
|
+
draft && renderForm(draft),
|
|
281
|
+
/* @__PURE__ */ jsx(DataTable_default, {
|
|
282
|
+
caption: title?.length ? title : t("admin.sharing.title"),
|
|
283
|
+
columns,
|
|
284
|
+
rows: policies,
|
|
285
|
+
getRowId: (policy) => policy.id ?? describeScope(policy).join("|"),
|
|
286
|
+
isLoading,
|
|
287
|
+
error,
|
|
288
|
+
emptyText: t("admin.sharing.empty"),
|
|
289
|
+
pagination: onPageChange ? {
|
|
290
|
+
limit,
|
|
291
|
+
offset,
|
|
292
|
+
onChange: onPageChange,
|
|
293
|
+
total: totalResults ?? policies.length
|
|
294
|
+
} : void 0
|
|
295
|
+
}),
|
|
296
|
+
renderOverlay()
|
|
297
|
+
]
|
|
298
|
+
});
|
|
299
|
+
};
|
|
300
|
+
var BaseSharingPolicies_default = BaseSharingPolicies;
|
|
301
|
+
|
|
302
|
+
//#endregion
|
|
303
|
+
export { BaseSharingPolicies_default as default };
|
|
304
|
+
//# sourceMappingURL=BaseSharingPolicies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseSharingPolicies.js","names":["BaseSharingPolicies: FC<BaseSharingPoliciesProps>","useTranslation","styles: Record<string, string>","useAdminPartStyles","columns: DataTableColumn<SharingPolicy>[]","Button","keepsSections: boolean","Select","TextField","body: ReactNode","Spinner","Alert","access: string","rules: [string, OverlayRule][]","items: DetailListItem[]","parts: string[]","AdminSection","DataTable"],"sources":["../../../../src/components/management/SharingPolicies/BaseSharingPolicies.tsx"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n OverlayRule,\n Preferences,\n ResolvedOverlay,\n SharingPolicy,\n SharingPolicyFormValues,\n SharingPolicyRequest,\n SharingPolicyUpdateRequest,\n describeSharingPolicyScope,\n isSharingPolicyFormValid,\n toSharingPolicyFormValues,\n toSharingPolicyRequest,\n toSharingPolicyUpdateRequest,\n} from '@thunderid/browser';\nimport {ChangeEvent, FC, FormEvent, ReactElement, ReactNode, useState} from 'react';\nimport useTranslation from '../../../hooks/useTranslation';\nimport Alert from '../../primitives/Alert/Alert';\nimport Button from '../../primitives/Button/Button';\nimport DataTable, {DataTableColumn} from '../../primitives/DataTable/DataTable';\nimport Select from '../../primitives/Select/Select';\nimport Spinner from '../../primitives/Spinner/Spinner';\nimport TextField from '../../primitives/TextField/TextField';\nimport {ConfirmButton, DetailList, DetailListItem, Panel} from '../shared/AdminParts';\nimport AdminSection from '../shared/AdminSection';\nimport useAdminPartStyles from '../shared/useAdminPartStyles';\n\n/**\n * What {@link BaseSharingPolicies} hands its `children` render function, so the policies can be shown with any UI.\n */\nexport interface BaseSharingPoliciesRenderProps {\n /**\n * The columns the default table shows, with translated headers and cell renderers.\n */\n columns: DataTableColumn<SharingPolicy>[];\n /**\n * Describes, in translated words, which organization units a policy reaches: one line per section.\n */\n describeScope: (policy: SharingPolicy) => string[];\n /**\n * A translated message when the policies could not be loaded, or `null`.\n */\n error: string | null;\n isLoading: boolean;\n isLoadingOverlay: boolean;\n isSubmitting: boolean;\n limit: number;\n /**\n * A translated message when a create, update or delete failed, or `null`.\n */\n mutationError: string | null;\n offset: number;\n /**\n * Creates a policy. Undefined unless editing is allowed.\n */\n onCreate?: (request: SharingPolicyRequest) => void;\n /**\n * Deletes a policy; ask for confirmation first. Undefined unless editing is allowed. Does nothing for a\n * read-only policy.\n */\n onDelete?: (policy: SharingPolicy) => void;\n /**\n * Shows the page that starts at `offset`. Undefined when the list is not paginated.\n */\n onPageChange?: (offset: number) => void;\n /**\n * Replaces a policy's sections. Undefined unless editing is allowed. Does nothing for a read-only policy.\n */\n onUpdate?: (policy: SharingPolicy, request: SharingPolicyUpdateRequest) => void;\n /**\n * The overlay rules that apply in `overlayOuId`, when one was given.\n */\n overlay?: ResolvedOverlay;\n overlayError: string | null;\n overlayOuId?: string;\n policies: SharingPolicy[];\n totalResults: number;\n}\n\nexport interface BaseSharingPoliciesProps {\n /**\n * Controls rendered next to the title.\n */\n actions?: ReactNode;\n /**\n * Renders custom UI in place of the default view. Receives the policies, the paging, the loading and\n * error state, the overlay rules, and the create, update and delete handlers when editing is allowed.\n */\n children?: (props: BaseSharingPoliciesRenderProps) => ReactNode;\n className?: string;\n description?: string;\n /**\n * A translated message when the policies could not be loaded, or `null`.\n */\n error?: string | null;\n isLoading?: boolean;\n isLoadingOverlay?: boolean;\n isSubmitting?: boolean;\n /**\n * Page size.\n * @default 20\n */\n limit?: number;\n /**\n * A translated message when a create, update or delete failed, or `null`.\n */\n mutationError?: string | null;\n offset?: number;\n /**\n * Creates a policy. The add action is hidden when omitted.\n */\n onCreate?: (request: SharingPolicyRequest) => void;\n /**\n * Deletes a policy, after the user confirms. The delete action is hidden when omitted.\n */\n onDelete?: (policy: SharingPolicy) => void;\n /**\n * Called with the offset of the page to show. Pagination is hidden when omitted.\n */\n onPageChange?: (offset: number) => void;\n /**\n * Replaces a policy's sections. The edit action is hidden when omitted.\n */\n onUpdate?: (policy: SharingPolicy, request: SharingPolicyUpdateRequest) => void;\n /**\n * The overlay rules that apply in `overlayOuId`.\n */\n overlay?: ResolvedOverlay;\n overlayError?: string | null;\n /**\n * The organization unit whose overlay rules are shown, read only.\n */\n overlayOuId?: string;\n policies: SharingPolicy[];\n preferences?: Preferences;\n /**\n * Heading of the view. Pass an empty string to hide it.\n */\n title?: string;\n totalResults?: number;\n}\n\ninterface Draft {\n policy?: SharingPolicy;\n values: SharingPolicyFormValues;\n}\n\nconst isOwned = (overlay: ResolvedOverlay): boolean => Boolean(overlay.isOwned ?? overlay.isOwnedByOU ?? overlay.owned);\n\n/**\n * Lists the sharing policies of one resource (a user, an application, a role or a flow) with the\n * organization units each reaches, lets the caller add, edit and delete them, and shows the overlay\n * rules that apply in one unit. Holds no data of its own: pass the policies and handle the changes.\n */\nconst BaseSharingPolicies: FC<BaseSharingPoliciesProps> = ({\n actions,\n children,\n className,\n description,\n error = null,\n isLoading = false,\n isLoadingOverlay = false,\n isSubmitting = false,\n limit = 20,\n mutationError = null,\n offset = 0,\n onCreate,\n onDelete,\n onPageChange,\n onUpdate,\n overlay,\n overlayError = null,\n overlayOuId,\n policies,\n preferences,\n title,\n totalResults,\n}: BaseSharingPoliciesProps): ReactElement => {\n const {t} = useTranslation(preferences?.i18n);\n const styles: Record<string, string> = useAdminPartStyles();\n const [draft, setDraft] = useState<Draft | null>(null);\n\n const describeScope = (policy: SharingPolicy): string[] => describeSharingPolicyScope(t, policy);\n const canChange = (policy: SharingPolicy): boolean => !policy.isReadOnly;\n\n const columns: DataTableColumn<SharingPolicy>[] = [\n {\n header: t('admin.sharing.columns.scope'),\n id: 'scope',\n render: (policy: SharingPolicy): ReactNode => (\n <span style={{display: 'flex', flexDirection: 'column'}}>\n {describeScope(policy).map((line: string) => (\n <span key={line}>{line}</span>\n ))}\n </span>\n ),\n },\n {\n header: t('admin.sharing.columns.stage'),\n id: 'stage',\n render: (policy: SharingPolicy): ReactNode =>\n policy.stage === 'reshare' ? t('admin.sharing.stage.reshare') : t('admin.sharing.stage.share'),\n },\n {\n header: t('admin.sharing.columns.version'),\n id: 'version',\n render: (policy: SharingPolicy): ReactNode => policy.version ?? '',\n },\n ];\n\n if (onUpdate || onDelete) {\n columns.push({\n header: t('admin.common.columns.actions'),\n id: 'actions',\n render: (policy: SharingPolicy): ReactNode =>\n canChange(policy) ? (\n <span className={styles['row']}>\n {onUpdate && (\n <Button\n variant=\"outline\"\n size=\"small\"\n disabled={isSubmitting}\n onClick={(): void => setDraft({policy, values: toSharingPolicyFormValues(policy)})}\n >\n {t('admin.sharing.actions.edit')}\n </Button>\n )}\n {onDelete && (\n <ConfirmButton\n confirmText={t('admin.sharing.delete.confirm')}\n isLoading={isSubmitting}\n onConfirm={(): void => onDelete(policy)}\n >\n {t('admin.sharing.actions.delete')}\n </ConfirmButton>\n )}\n </span>\n ) : (\n <span className={styles['muted']}>{t('admin.sharing.read_only')}</span>\n ),\n });\n }\n\n if (children) {\n return (\n <div className={className}>\n {children({\n columns,\n describeScope,\n error,\n isLoading,\n isLoadingOverlay,\n isSubmitting,\n limit,\n mutationError,\n offset,\n onCreate,\n onDelete: onDelete\n ? (policy: SharingPolicy): void => {\n if (canChange(policy)) onDelete(policy);\n }\n : undefined,\n onPageChange,\n onUpdate: onUpdate\n ? (policy: SharingPolicy, request: SharingPolicyUpdateRequest): void => {\n if (canChange(policy)) onUpdate(policy, request);\n }\n : undefined,\n overlay,\n overlayError,\n overlayOuId,\n policies,\n totalResults: totalResults ?? policies.length,\n })}\n </div>\n );\n }\n\n const setValue = <K extends keyof SharingPolicyFormValues>(field: K, value: SharingPolicyFormValues[K]): void =>\n setDraft((previous: Draft | null) => previous && {...previous, values: {...previous.values, [field]: value}});\n\n const handleSave = (event: FormEvent<HTMLFormElement>): void => {\n event.preventDefault();\n\n if (!draft || !isSharingPolicyFormValid(draft.values, draft.policy)) {\n return;\n }\n\n if (draft.policy) {\n onUpdate?.(draft.policy, toSharingPolicyUpdateRequest(draft.values, draft.policy));\n } else {\n onCreate?.(toSharingPolicyRequest(draft.values));\n }\n\n setDraft(null);\n };\n\n const renderForm = (current: Draft): ReactElement => {\n const {values} = current;\n const keepsSections: boolean = Boolean(current.policy?.allUnits) || current.policy?.otherTreeRoots?.mode === 'all';\n\n return (\n <Panel title={current.policy ? t('admin.sharing.form.edit_title') : t('admin.sharing.form.create_title')}>\n <form\n className={styles['row']}\n style={{alignItems: 'stretch', flexDirection: 'column'}}\n onSubmit={handleSave}\n noValidate\n >\n {keepsSections && <span className={styles['muted']}>{t('admin.sharing.form.kept_sections')}</span>}\n <Select\n name=\"childUnitsMode\"\n label={t('admin.sharing.form.child_units')}\n options={[\n {label: t('admin.sharing.form.child_units_none'), value: 'none'},\n {label: t('admin.sharing.form.child_units_all'), value: 'all'},\n {label: t('admin.sharing.form.child_units_selected'), value: 'selected'},\n ]}\n value={values.childUnitsMode}\n onChange={(event: ChangeEvent<HTMLSelectElement>): void =>\n setValue('childUnitsMode', event.target.value as SharingPolicyFormValues['childUnitsMode'])\n }\n />\n {values.childUnitsMode === 'all' && (\n <TextField\n name=\"excludedOuIds\"\n label={t('admin.sharing.form.excluded_units')}\n helperText={t('admin.sharing.form.ids_hint')}\n value={values.excludedOuIds}\n onChange={(event: ChangeEvent<HTMLInputElement>): void => setValue('excludedOuIds', event.target.value)}\n />\n )}\n {values.childUnitsMode === 'selected' && (\n <>\n <TextField\n name=\"selectedOuIds\"\n label={t('admin.sharing.form.selected_units')}\n helperText={t('admin.sharing.form.ids_hint')}\n required\n value={values.selectedOuIds}\n onChange={(event: ChangeEvent<HTMLInputElement>): void => setValue('selectedOuIds', event.target.value)}\n />\n <Select\n name=\"reach\"\n label={t('admin.sharing.form.reach')}\n options={[\n {label: t('admin.sharing.form.reach_subtree'), value: 'subtree'},\n {label: t('admin.sharing.form.reach_unit'), value: 'unit'},\n ]}\n value={values.reach}\n onChange={(event: ChangeEvent<HTMLSelectElement>): void =>\n setValue('reach', event.target.value as SharingPolicyFormValues['reach'])\n }\n />\n </>\n )}\n {current.policy?.otherTreeRoots?.mode !== 'all' && (\n <TextField\n name=\"otherTreeRootOuIds\"\n label={t('admin.sharing.form.other_tree_roots')}\n helperText={t('admin.sharing.form.ids_hint')}\n value={values.otherTreeRootOuIds}\n onChange={(event: ChangeEvent<HTMLInputElement>): void =>\n setValue('otherTreeRootOuIds', event.target.value)\n }\n />\n )}\n <div className={styles['row']} style={{justifyContent: 'flex-end'}}>\n <Button type=\"button\" variant=\"text\" disabled={isSubmitting} onClick={(): void => setDraft(null)}>\n {t('admin.common.actions.cancel')}\n </Button>\n <Button\n type=\"submit\"\n loading={isSubmitting}\n disabled={isSubmitting || !isSharingPolicyFormValid(values, current.policy)}\n >\n {t('admin.sharing.actions.save')}\n </Button>\n </div>\n </form>\n </Panel>\n );\n };\n\n const renderOverlay = (): ReactNode => {\n if (!overlayOuId) {\n return null;\n }\n\n let body: ReactNode;\n\n if (isLoadingOverlay) {\n body = (\n <span className={styles['muted']} role=\"status\">\n <Spinner size=\"small\" /> {t('admin.common.loading')}\n </span>\n );\n } else if (overlayError) {\n body = (\n <Alert variant=\"error\" role=\"alert\">\n {overlayError}\n </Alert>\n );\n } else if (overlay) {\n let access: string = t('admin.sharing.overlay.not_shared');\n\n if (isOwned(overlay)) {\n access = t('admin.sharing.overlay.owned');\n } else if (overlay.visible !== false && (overlay.policyIds?.length ?? 0) > 0) {\n access = t('admin.sharing.overlay.shared');\n }\n\n const rules: [string, OverlayRule][] = Object.entries(overlay.rules ?? {});\n const items: DetailListItem[] = [{label: t('admin.sharing.columns.scope'), value: access}];\n\n if (overlay.policyIds?.length) {\n items.push({label: t('admin.sharing.overlay.policies'), value: overlay.policyIds.join(', ')});\n }\n\n rules.forEach(([field, rule]: [string, OverlayRule]) => {\n const parts: string[] = [\n rule.value?.length ? t('admin.sharing.overlay.value', {values: rule.value.join(', ')}) : '',\n rule.allowedValues?.length ? t('admin.sharing.overlay.allowed', {values: rule.allowedValues.join(', ')}) : '',\n rule.excludedValues?.length\n ? t('admin.sharing.overlay.excluded', {values: rule.excludedValues.join(', ')})\n : '',\n rule.editable ? t('admin.sharing.overlay.editable') : '',\n ].filter(Boolean);\n\n items.push({label: field, value: parts.join(' · ') || t('admin.sharing.overlay.no_rules')});\n });\n\n body = (\n <>\n <DetailList items={items} />\n {rules.length === 0 && <span className={styles['muted']}>{t('admin.sharing.overlay.no_rules')}</span>}\n </>\n );\n }\n\n return <Panel title={t('admin.sharing.overlay.title', {unit: overlayOuId})}>{body}</Panel>;\n };\n\n return (\n <AdminSection\n block=\"sharing-policies\"\n className={className}\n title={title ?? t('admin.sharing.title')}\n description={description}\n preferences={preferences}\n actions={\n <>\n {actions}\n {onCreate && !draft && (\n <Button\n variant=\"outline\"\n size=\"small\"\n disabled={isSubmitting}\n onClick={(): void => setDraft({values: toSharingPolicyFormValues()})}\n >\n {t('admin.sharing.actions.create')}\n </Button>\n )}\n </>\n }\n >\n {mutationError && (\n <Alert variant=\"error\" role=\"alert\">\n {mutationError}\n </Alert>\n )}\n {draft && renderForm(draft)}\n <DataTable\n caption={title?.length ? title : t('admin.sharing.title')}\n columns={columns}\n rows={policies}\n getRowId={(policy: SharingPolicy): string => policy.id ?? describeScope(policy).join('|')}\n isLoading={isLoading}\n error={error}\n emptyText={t('admin.sharing.empty')}\n pagination={\n onPageChange ? {limit, offset, onChange: onPageChange, total: totalResults ?? policies.length} : undefined\n }\n />\n {renderOverlay()}\n </AdminSection>\n );\n};\n\nexport default BaseSharingPolicies;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { SharingResourceType } from '@thunderid/browser';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
import { BaseSharingPoliciesProps } from './BaseSharingPolicies';
|
|
4
|
+
export type SharingPoliciesProps = Omit<BaseSharingPoliciesProps, 'error' | 'isLoading' | 'isLoadingOverlay' | 'isSubmitting' | 'mutationError' | 'offset' | 'onCreate' | 'onDelete' | 'onPageChange' | 'onUpdate' | 'overlay' | 'overlayError' | 'overlayOuId' | 'policies' | 'totalResults'> & {
|
|
5
|
+
/**
|
|
6
|
+
* Whether policies can be added, edited and deleted from this view. Deleting asks for confirmation.
|
|
7
|
+
* @default false
|
|
8
|
+
*/
|
|
9
|
+
editable?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Shows the overlay rules that apply to the resource in this organization unit, read only.
|
|
12
|
+
*/
|
|
13
|
+
ouId?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Identifier of the user, application, role or flow.
|
|
16
|
+
*/
|
|
17
|
+
resourceId: string;
|
|
18
|
+
/**
|
|
19
|
+
* The kind of resource whose sharing policies are shown.
|
|
20
|
+
*/
|
|
21
|
+
resourceType: SharingResourceType;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Lists the sharing policies of a user, an application, a role or a flow, and lets the signed-in user
|
|
25
|
+
* add, edit and delete them when `editable`. With `ouId`, also shows the overlay rules the policies
|
|
26
|
+
* resolve to in that organization unit. `UserDetails`, `ApplicationDetails` and `RoleDetails` do not
|
|
27
|
+
* embed it: place it where the app needs it.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```tsx
|
|
31
|
+
* <SharingPolicies resourceType="role" resourceId={roleId} editable />
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
declare const SharingPolicies: FC<SharingPoliciesProps>;
|
|
35
|
+
export default SharingPolicies;
|
|
36
|
+
//# sourceMappingURL=SharingPolicies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SharingPolicies.d.ts","sourceRoot":"","sources":["../../../../src/components/management/SharingPolicies/SharingPolicies.tsx"],"names":[],"mappings":"AAGA,OAAO,EAUL,mBAAmB,EAGpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,EAAE,EAAyB,MAAM,OAAO,CAAC;AACjD,OAA4B,EAAC,wBAAwB,EAAC,MAAM,uBAAuB,CAAC;AAWpF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,wBAAwB,EACtB,OAAO,GACP,WAAW,GACX,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,QAAQ,GACR,UAAU,GACV,UAAU,GACV,cAAc,GACd,UAAU,GACV,SAAS,GACT,cAAc,GACd,aAAa,GACb,UAAU,GACV,cAAc,CACjB,GAAG;IACF;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,QAAA,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CAsF7C,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import useTranslation_default from "../../../hooks/useTranslation.js";
|
|
2
|
+
import useManagementEndpoint_default from "../../../hooks/management/useManagementEndpoint.js";
|
|
3
|
+
import useResourceQuery_default from "../../../hooks/management/useResourceQuery.js";
|
|
4
|
+
import useResourceMutation_default from "../../../hooks/management/useResourceMutation.js";
|
|
5
|
+
import BaseSharingPolicies_default from "./BaseSharingPolicies.js";
|
|
6
|
+
import { SHARING_POLICY_ERROR_KEYS, SHARING_RESOURCE_COLLECTIONS, SharingPolicyQueryKeys, getSharingPolicyOperations, toManagementErrorMessage } from "@thunderid/browser";
|
|
7
|
+
import { useState } from "react";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
|
|
10
|
+
//#region src/components/management/SharingPolicies/SharingPolicies.tsx
|
|
11
|
+
/**
|
|
12
|
+
* Lists the sharing policies of a user, an application, a role or a flow, and lets the signed-in user
|
|
13
|
+
* add, edit and delete them when `editable`. With `ouId`, also shows the overlay rules the policies
|
|
14
|
+
* resolve to in that organization unit. `UserDetails`, `ApplicationDetails` and `RoleDetails` do not
|
|
15
|
+
* embed it: place it where the app needs it.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <SharingPolicies resourceType="role" resourceId={roleId} editable />
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
const SharingPolicies = ({ editable = false, limit = 20, ouId, preferences, resourceId, resourceType,...rest }) => {
|
|
23
|
+
const { t } = useTranslation_default(preferences?.i18n);
|
|
24
|
+
const [offset, setOffset] = useState(0);
|
|
25
|
+
const [lastChange, setLastChange] = useState("create");
|
|
26
|
+
const endpoint = useManagementEndpoint_default(SHARING_RESOURCE_COLLECTIONS[resourceType]);
|
|
27
|
+
const operations = getSharingPolicyOperations(resourceType);
|
|
28
|
+
const policies = useResourceQuery_default([
|
|
29
|
+
SharingPolicyQueryKeys.SHARING_POLICIES,
|
|
30
|
+
resourceType,
|
|
31
|
+
resourceId,
|
|
32
|
+
{
|
|
33
|
+
limit,
|
|
34
|
+
offset
|
|
35
|
+
}
|
|
36
|
+
], (fetcher) => operations.list({
|
|
37
|
+
...endpoint,
|
|
38
|
+
fetcher,
|
|
39
|
+
limit,
|
|
40
|
+
offset,
|
|
41
|
+
resourceId
|
|
42
|
+
}), { enabled: Boolean(resourceId) });
|
|
43
|
+
const overlay = useResourceQuery_default([
|
|
44
|
+
SharingPolicyQueryKeys.OVERLAY_RULES,
|
|
45
|
+
resourceType,
|
|
46
|
+
resourceId,
|
|
47
|
+
ouId
|
|
48
|
+
], (fetcher) => operations.getOverlayRules({
|
|
49
|
+
...endpoint,
|
|
50
|
+
fetcher,
|
|
51
|
+
ouId: ouId ?? "",
|
|
52
|
+
resourceId
|
|
53
|
+
}), { enabled: Boolean(resourceId && ouId) });
|
|
54
|
+
const change = useResourceMutation_default(async (variables, fetcher) => {
|
|
55
|
+
if (variables.kind === "create") return operations.create({
|
|
56
|
+
...endpoint,
|
|
57
|
+
fetcher,
|
|
58
|
+
payload: variables.request,
|
|
59
|
+
resourceId
|
|
60
|
+
});
|
|
61
|
+
if (variables.kind === "update") return operations.update({
|
|
62
|
+
...endpoint,
|
|
63
|
+
fetcher,
|
|
64
|
+
payload: variables.request,
|
|
65
|
+
policyId: variables.policy.id ?? "",
|
|
66
|
+
resourceId
|
|
67
|
+
});
|
|
68
|
+
await operations.delete({
|
|
69
|
+
...endpoint,
|
|
70
|
+
fetcher,
|
|
71
|
+
policyId: variables.policy.id ?? "",
|
|
72
|
+
resourceId
|
|
73
|
+
});
|
|
74
|
+
}, () => [[
|
|
75
|
+
SharingPolicyQueryKeys.SHARING_POLICIES,
|
|
76
|
+
resourceType,
|
|
77
|
+
resourceId
|
|
78
|
+
], [
|
|
79
|
+
SharingPolicyQueryKeys.OVERLAY_RULES,
|
|
80
|
+
resourceType,
|
|
81
|
+
resourceId
|
|
82
|
+
]]);
|
|
83
|
+
const run = (variables) => {
|
|
84
|
+
setLastChange(variables.kind);
|
|
85
|
+
change.mutate(variables);
|
|
86
|
+
};
|
|
87
|
+
return /* @__PURE__ */ jsx(BaseSharingPolicies_default, {
|
|
88
|
+
policies: policies.data?.policies ?? [],
|
|
89
|
+
totalResults: policies.data?.totalResults,
|
|
90
|
+
isLoading: policies.isLoading,
|
|
91
|
+
error: toManagementErrorMessage(t, policies.error, "admin.sharing.error"),
|
|
92
|
+
mutationError: toManagementErrorMessage(t, change.error, lastChange === "delete" ? "admin.sharing.errors.delete" : "admin.sharing.errors.save", SHARING_POLICY_ERROR_KEYS),
|
|
93
|
+
isSubmitting: change.isLoading,
|
|
94
|
+
limit,
|
|
95
|
+
offset,
|
|
96
|
+
onPageChange: setOffset,
|
|
97
|
+
overlay: overlay.data,
|
|
98
|
+
overlayOuId: ouId,
|
|
99
|
+
isLoadingOverlay: Boolean(ouId) && overlay.isLoading,
|
|
100
|
+
overlayError: toManagementErrorMessage(t, overlay.error, "admin.sharing.overlay.error"),
|
|
101
|
+
onCreate: editable ? (request) => run({
|
|
102
|
+
kind: "create",
|
|
103
|
+
request
|
|
104
|
+
}) : void 0,
|
|
105
|
+
onUpdate: editable ? (policy, request) => run({
|
|
106
|
+
kind: "update",
|
|
107
|
+
policy,
|
|
108
|
+
request
|
|
109
|
+
}) : void 0,
|
|
110
|
+
onDelete: editable ? (policy) => run({
|
|
111
|
+
kind: "delete",
|
|
112
|
+
policy
|
|
113
|
+
}) : void 0,
|
|
114
|
+
preferences,
|
|
115
|
+
...rest
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
var SharingPolicies_default = SharingPolicies;
|
|
119
|
+
|
|
120
|
+
//#endregion
|
|
121
|
+
export { SharingPolicies_default as default };
|
|
122
|
+
//# sourceMappingURL=SharingPolicies.js.map
|