diff options
Diffstat (limited to 'FrontEnd/src/views/common/dailog')
-rw-r--r-- | FrontEnd/src/views/common/dailog/FullPageDialog.css | 26 | ||||
-rw-r--r-- | FrontEnd/src/views/common/dailog/FullPageDialog.tsx | 9 |
2 files changed, 33 insertions, 2 deletions
diff --git a/FrontEnd/src/views/common/dailog/FullPageDialog.css b/FrontEnd/src/views/common/dailog/FullPageDialog.css new file mode 100644 index 00000000..65f16041 --- /dev/null +++ b/FrontEnd/src/views/common/dailog/FullPageDialog.css @@ -0,0 +1,26 @@ +.cru-full-page {
+ position: fixed;
+ z-index: 1030;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ background-color: white;
+ padding-top: 56px;
+}
+
+.cru-full-page-top-bar {
+ height: 56px;
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ z-index: 1;
+ background-color: var(--cru-primary-color);
+ display: flex;
+ align-items: center;
+}
+
+.cru-full-page-content-container {
+ overflow: scroll;
+}
diff --git a/FrontEnd/src/views/common/dailog/FullPageDialog.tsx b/FrontEnd/src/views/common/dailog/FullPageDialog.tsx index 88c90bbc..72c9b269 100644 --- a/FrontEnd/src/views/common/dailog/FullPageDialog.tsx +++ b/FrontEnd/src/views/common/dailog/FullPageDialog.tsx @@ -1,6 +1,9 @@ import React from "react"; +import { createPortal } from "react-dom"; import classnames from "classnames"; +import "./FullPageDialog.css"; + export interface FullPageDialogProps { show: boolean; onBack: () => void; @@ -13,7 +16,7 @@ const FullPageDialog: React.FC<FullPageDialogProps> = ({ children, contentContainerClassName, }) => { - return ( + return createPortal( <div className="cru-full-page" style={{ display: show ? undefined : "none" }} @@ -32,7 +35,9 @@ const FullPageDialog: React.FC<FullPageDialogProps> = ({ > {children} </div> - </div> + </div>, + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + document.getElementById("portal")! ); }; |