diff --git a/public/pages/CreatePolicy/containers/CreatePolicy/CreatePolicy.tsx b/public/pages/CreatePolicy/containers/CreatePolicy/CreatePolicy.tsx index 83a070685..3585028de 100644 --- a/public/pages/CreatePolicy/containers/CreatePolicy/CreatePolicy.tsx +++ b/public/pages/CreatePolicy/containers/CreatePolicy/CreatePolicy.tsx @@ -66,7 +66,7 @@ export class CreatePolicy extends Component { static contextType = CoreServicesContext; constructor(props: PolicyDetailsProps) { super(props); + const uiSettings = getUISettings(); + const useNewUx = uiSettings.get("home:useNewHomePage"); this.state = { policyId: "", isJSONModalOpen: false, policy: null, isDeleteModalVisible: false, + isEditModalVisible: false, pageIndex: 0, pageSize: 10, showPerPageOptions: true, + useNewUX: useNewUx, }; } componentDidMount = async (): Promise => { - this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_MANAGEMENT, BREADCRUMBS.INDEX_POLICIES]); + this.state.useNewUX + ? this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_POLICIES_NEW]) + : this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_MANAGEMENT, BREADCRUMBS.INDEX_POLICIES]); const { id } = queryString.parse(this.props.location.search); if (typeof id === "string") { - this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_MANAGEMENT, BREADCRUMBS.INDEX_POLICIES, { text: id }]); + this.state.useNewUX + ? this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_POLICIES_NEW, { text: id }]) + : this.context.chrome.setBreadcrumbs([BREADCRUMBS.INDEX_MANAGEMENT, BREADCRUMBS.INDEX_POLICIES, { text: id }]); await this.getPolicy(id); } else { this.context.notifications.toasts.addDanger(`Invalid policy id: ${id}`); @@ -117,6 +129,14 @@ export class PolicyDetails extends Component { + this.setState({ isEditModalVisible: false }); + }; + + showEditModal = (): void => { + this.setState({ isEditModalVisible: true }); + }; + closeDeleteModal = (): void => { this.setState({ isDeleteModalVisible: false }); }; @@ -156,7 +176,17 @@ export class PolicyDetails extends Component { + return isEditModalVisible && ; + }; + + const jsonModal = () => { + return isJSONModalOpen && ; + }; + + const deleteModal = () => { + return ( + isDeleteModalVisible && ( + + ) + ); + }; + + const { HeaderControl } = getNavigationUI(); + const { setAppRightControls, setAppBadgeControls } = getApplication(); + + const padding_style = useNewUX ? { padding: "0px 0px" } : { padding: "5px 50px" }; return ( -
- - - -

{policyId}

-
-
- - - +
+ {useNewUX ? ( + <> + + {editModal()} + + ) : ( + <> + - - {({ onShow }) => ( - onShow(CreatePolicyModal, { isEdit: true, onClickContinue: this.onEdit })} - data-test-subj="policy-details-edit-button" - > - Edit - - )} - + +

{policyId}

+
+ - - Delete - - - - - View JSON - + + + + {({ onShow }) => ( + onShow(CreatePolicyModal, { isEdit: true, onClickContinue: this.onEdit })} + data-test-subj="policy-details-edit-button" + > + Edit + + )} + + + + + Delete + + + + + View JSON + + +
- - + + )} {}} isReadOnly={true} /> - - {isJSONModalOpen && } - - {isDeleteModalVisible && ( - - )} + {jsonModal()} + {deleteModal()}
); } diff --git a/public/pages/VisualCreatePolicy/containers/VisualCreatePolicy/VisualCreatePolicy.tsx b/public/pages/VisualCreatePolicy/containers/VisualCreatePolicy/VisualCreatePolicy.tsx index bf781ae81..48e61f8d8 100644 --- a/public/pages/VisualCreatePolicy/containers/VisualCreatePolicy/VisualCreatePolicy.tsx +++ b/public/pages/VisualCreatePolicy/containers/VisualCreatePolicy/VisualCreatePolicy.tsx @@ -76,7 +76,7 @@ export class VisualCreatePolicy extends Component