- Added DynamicField interface to define form field structure. - Created DynamicFormConfig interface for form configuration. - Developed DynamicFormComponent to handle dynamic form rendering and validation. - Implemented DynamicPopupComponent for displaying forms in a modal dialog. - Added HTML and SCSS for dynamic form and popup styling. - Integrated Material Design components for form inputs and buttons. - Implemented form submission logic with API integration. - Added tests for DynamicForm and DynamicPopup components. - Updated global styles for Material components in themed popups. - Included Material Icons in index.html for better UI representation.
86 lines
1.6 KiB
SCSS
86 lines
1.6 KiB
SCSS
img {
|
|
border-radius: inherit;
|
|
}
|
|
|
|
.logout-section {
|
|
margin-top: 14px;
|
|
padding-bottom: 8px;
|
|
display: flex;
|
|
justify-content: center;
|
|
}
|
|
|
|
.logout-btn {
|
|
width: 90%;
|
|
margin: 0 auto;
|
|
padding: 14px 18px;
|
|
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 10px;
|
|
|
|
background: #191919; // darker for better contrast
|
|
border: 1px solid rgba(227, 179, 65, 0.18); // subtle gold border
|
|
|
|
border-radius: 14px;
|
|
cursor: pointer;
|
|
color: #e3b341; // gold text
|
|
|
|
font-size: 15px;
|
|
font-weight: 500;
|
|
|
|
transition: 0.3s ease;
|
|
|
|
/* Subtle depth */
|
|
box-shadow:
|
|
inset 0 0 8px rgba(255, 255, 255, 0.03),
|
|
0 4px 18px rgba(0, 0, 0, 0.45);
|
|
|
|
&:hover {
|
|
background: rgba(227, 179, 65, 0.12);
|
|
|
|
border-color: rgba(227, 179, 65, 0.35);
|
|
|
|
box-shadow:
|
|
0 0 12px rgba(227, 179, 65, 0.25),
|
|
inset 0 0 10px rgba(227, 179, 65, 0.1);
|
|
|
|
color: #fff;
|
|
}
|
|
}
|
|
|
|
.icon {
|
|
font-size: 18px;
|
|
line-height: 0;
|
|
}
|
|
|
|
.logout-divider {
|
|
border: 0;
|
|
height: 1px;
|
|
background: rgba(255, 255, 255, 0.06);
|
|
margin: 18px 0 14px 0;
|
|
}
|
|
|
|
.name-row {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
gap: 6px;
|
|
}
|
|
|
|
.edit-btn {
|
|
background: transparent;
|
|
border: none;
|
|
padding: 6px 8px;
|
|
border-radius: 6px;
|
|
cursor: pointer;
|
|
font-size: 1rem;
|
|
color: var(--orange-yellow-crayola);
|
|
flex-shrink: 0;
|
|
position: relative;
|
|
top: -8px;
|
|
transition: background 0.2s ease;
|
|
|
|
&:hover {
|
|
background: rgba(227, 179, 65, 0.12);
|
|
}
|
|
} |