Skip to content

Commit c7d4692

Browse files
warwickschroederjasontaylordev
authored andcommitted
Move styles into component files.
1 parent 2c70a6a commit c7d4692

File tree

6 files changed

+476
-479
lines changed

6 files changed

+476
-479
lines changed

src/Frontend/src/components/platformcapabilities/CapabilityCard.vue

Lines changed: 247 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,5 +108,251 @@ function handleButtonClick() {
108108
</template>
109109

110110
<style scoped>
111-
@import "@/components/platformcapabilities/styles/capabilityCard.css";
111+
.capability-card {
112+
background: var(--card-bg, #fff);
113+
border: 1px solid var(--border-color, #e0e0e0);
114+
border-radius: 8px;
115+
padding: 20px;
116+
margin-bottom: 16px;
117+
transition: all 0.2s ease;
118+
position: relative;
119+
min-height: 150px;
120+
}
121+
122+
.capability-available {
123+
border-left: 4px solid var(--success-color, #28a745);
124+
}
125+
126+
.capability-unavailable {
127+
border-left: 4px solid var(--danger-color, #dc3545);
128+
}
129+
130+
.capability-partially-unavailable {
131+
border-left: 4px solid var(--warning-color, #ffc107);
132+
}
133+
134+
.capability-loading {
135+
border-left: 4px solid var(--border-color, #e0e0e0);
136+
}
137+
138+
.capability-notconfigured {
139+
background: linear-gradient(135deg, #f6f9fc 0%, #e9f2f9 100%);
140+
border: 1px solid #c3ddf5;
141+
border-left: 4px solid #007bff;
142+
}
143+
144+
.text-info {
145+
color: #007bff;
146+
}
147+
148+
.text-warning {
149+
color: var(--warning-color, #ffc107);
150+
}
151+
152+
.loading-overlay {
153+
position: absolute;
154+
top: 0;
155+
left: 0;
156+
right: 0;
157+
bottom: 0;
158+
background: rgba(255, 255, 255, 0.9);
159+
display: flex;
160+
flex-direction: column;
161+
align-items: center;
162+
justify-content: center;
163+
border-radius: 8px;
164+
z-index: 10;
165+
}
166+
167+
.loading-spinner {
168+
width: 40px;
169+
height: 40px;
170+
border: 3px solid var(--border-color, #e0e0e0);
171+
border-top-color: var(--primary-color, #007bff);
172+
border-radius: 50%;
173+
animation: spin 0.8s linear infinite;
174+
}
175+
176+
@keyframes spin {
177+
to {
178+
transform: rotate(360deg);
179+
}
180+
}
181+
182+
.loading-text {
183+
margin-top: 12px;
184+
color: var(--text-secondary, #666);
185+
font-size: 14px;
186+
}
187+
188+
.capability-header {
189+
display: flex;
190+
align-items: flex-start;
191+
gap: 16px;
192+
margin-bottom: 12px;
193+
}
194+
195+
.capability-icon {
196+
font-size: 24px;
197+
flex-shrink: 0;
198+
margin-top: 2px;
199+
}
200+
201+
.capability-info {
202+
flex: 1;
203+
min-width: 0;
204+
}
205+
206+
.capability-title-row {
207+
display: flex;
208+
align-items: center;
209+
gap: 12px;
210+
margin-bottom: 4px;
211+
}
212+
213+
.capability-title {
214+
font-size: 18px;
215+
font-weight: 600;
216+
color: var(--text-primary, #333);
217+
}
218+
219+
.status-indicators {
220+
display: flex;
221+
gap: 12px;
222+
align-items: center;
223+
}
224+
225+
.indicator-item {
226+
display: flex;
227+
align-items: center;
228+
gap: 4px;
229+
cursor: help;
230+
}
231+
232+
.indicator-light {
233+
font-size: 10px;
234+
}
235+
236+
.light-success {
237+
color: var(--success-color, #28a745);
238+
}
239+
240+
.light-warning {
241+
color: var(--warning-color, #ffc107);
242+
}
243+
244+
.light-danger {
245+
color: var(--danger-color, #dc3545);
246+
}
247+
248+
.indicator-label {
249+
font-size: 12px;
250+
color: var(--text-secondary, #666);
251+
white-space: nowrap;
252+
}
253+
254+
.capability-subtitle {
255+
font-size: 14px;
256+
color: var(--text-secondary, #666);
257+
line-height: 1.4;
258+
}
259+
260+
.capability-status {
261+
display: flex;
262+
flex-direction: column;
263+
align-items: flex-end;
264+
gap: 4px;
265+
}
266+
267+
.status-badge {
268+
padding: 4px 12px;
269+
border-radius: 12px;
270+
font-size: 12px;
271+
font-weight: 600;
272+
text-transform: uppercase;
273+
letter-spacing: 0.5px;
274+
}
275+
276+
.status-available {
277+
background-color: #d4edda;
278+
color: #155724;
279+
}
280+
281+
.status-unavailable {
282+
background-color: #f8d7da;
283+
color: #721c24;
284+
}
285+
286+
.status-partially-unavailable {
287+
background-color: #fff3cd;
288+
color: #856404;
289+
}
290+
291+
.capability-footer {
292+
display: flex;
293+
justify-content: space-between;
294+
align-items: center;
295+
gap: 16px;
296+
margin-top: 12px;
297+
padding-top: 12px;
298+
border-top: 1px solid var(--border-color, #e0e0e0);
299+
}
300+
301+
.capability-description {
302+
flex: 1;
303+
font-size: 13px;
304+
color: var(--text-secondary, #666);
305+
line-height: 1.5;
306+
overflow: hidden;
307+
text-overflow: ellipsis;
308+
display: -webkit-box;
309+
-webkit-line-clamp: 2;
310+
line-clamp: 2;
311+
-webkit-box-orient: vertical;
312+
}
313+
314+
.learn-more-btn {
315+
padding: 8px 16px;
316+
border-radius: 4px;
317+
text-decoration: none;
318+
font-size: 14px;
319+
font-weight: 500;
320+
transition: all 0.2s ease;
321+
white-space: nowrap;
322+
border: 1px solid transparent;
323+
}
324+
325+
.learn-more-btn.btn-primary {
326+
background-color: var(--primary-color, #007bff);
327+
color: white;
328+
border-color: var(--primary-color, #007bff);
329+
}
330+
331+
.learn-more-btn.btn-primary:hover {
332+
background-color: var(--primary-hover-color, #0056b3);
333+
border-color: var(--primary-hover-color, #0056b3);
334+
}
335+
336+
/* Responsive adjustments */
337+
@media (max-width: 768px) {
338+
.capability-header {
339+
flex-direction: column;
340+
}
341+
342+
.capability-status {
343+
align-items: flex-start;
344+
flex-direction: row;
345+
gap: 8px;
346+
}
347+
348+
.capability-footer {
349+
flex-direction: column;
350+
align-items: flex-start;
351+
}
352+
353+
.learn-more-btn {
354+
width: 100%;
355+
text-align: center;
356+
}
357+
}
112358
</style>

src/Frontend/src/components/platformcapabilities/PlatformCapabilitiesDashboardItem.vue

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,5 +66,19 @@ const errorWizardPages = computed(() => getErrorWizardPages(error.status.value))
6666
</template>
6767

6868
<style scoped>
69-
@import "@/components/platformcapabilities/styles/platformDashboardSection.css";
69+
.capabilities-header {
70+
margin-bottom: 10px;
71+
}
72+
.capabilities-description {
73+
font-size: 14px;
74+
color: var(--text-secondary, #666);
75+
margin: 0;
76+
}
77+
.capabilities-list {
78+
display: flex;
79+
gap: 16px;
80+
}
81+
.capabilities-list > * {
82+
flex: 1;
83+
}
7084
</style>

0 commit comments

Comments
 (0)