feat: Allow user generated notifications (#2401)
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
align-items: flex-end;
|
||||
padding: 24px;
|
||||
pointer-events: none;
|
||||
z-index: $z-index-overlay-message;
|
||||
z-index: $z-index-notification;
|
||||
}
|
||||
|
||||
.backdrop {
|
||||
@@ -17,7 +17,7 @@
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
.message {
|
||||
.notification {
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
@@ -30,23 +30,22 @@
|
||||
padding-right: 48px;
|
||||
overflow-y: auto;
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: var(--advanced-camera-card-overlay-message-scrollbar-color)
|
||||
transparent;
|
||||
scrollbar-color: var(--advanced-camera-card-notification-scrollbar-color) transparent;
|
||||
|
||||
// Glassmorphism background
|
||||
background: var(--advanced-camera-card-overlay-message-background);
|
||||
backdrop-filter: var(--advanced-camera-card-overlay-message-backdrop-filter);
|
||||
-webkit-backdrop-filter: var(--advanced-camera-card-overlay-message-backdrop-filter);
|
||||
background: var(--advanced-camera-card-notification-background);
|
||||
backdrop-filter: var(--advanced-camera-card-notification-backdrop-filter);
|
||||
-webkit-backdrop-filter: var(--advanced-camera-card-notification-backdrop-filter);
|
||||
|
||||
// Borders & Edge highlights
|
||||
border: var(--advanced-camera-card-overlay-message-border);
|
||||
border-top: var(--advanced-camera-card-overlay-message-border-top);
|
||||
border: var(--advanced-camera-card-notification-border);
|
||||
border-top: var(--advanced-camera-card-notification-border-top);
|
||||
border-radius: var(--advanced-camera-card-border-radius-final);
|
||||
|
||||
// Shadows
|
||||
box-shadow: var(
|
||||
--advanced-camera-card-box-shadow-override,
|
||||
var(--advanced-camera-card-overlay-message-box-shadow)
|
||||
var(--advanced-camera-card-notification-box-shadow)
|
||||
);
|
||||
|
||||
pointer-events: auto;
|
||||
@@ -56,7 +55,7 @@
|
||||
}
|
||||
|
||||
// Exit animation
|
||||
.message.exiting {
|
||||
.notification.exiting {
|
||||
animation: slideDown 0.25s ease-out forwards;
|
||||
}
|
||||
|
||||
@@ -99,12 +98,12 @@
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: var(--advanced-camera-card-overlay-message-icon-color);
|
||||
color: var(--advanced-camera-card-notification-icon-color);
|
||||
filter: drop-shadow(
|
||||
0 0 8px
|
||||
color-mix(
|
||||
in oklab,
|
||||
var(--advanced-camera-card-overlay-message-icon-color),
|
||||
var(--advanced-camera-card-notification-icon-color),
|
||||
transparent 60%
|
||||
)
|
||||
);
|
||||
@@ -119,7 +118,7 @@
|
||||
font-size: 15px;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
color: var(--advanced-camera-card-overlay-message-text-color);
|
||||
color: var(--advanced-camera-card-notification-text-color);
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
@@ -135,7 +134,7 @@
|
||||
|
||||
background: color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-close-color),
|
||||
var(--advanced-camera-card-notification-close-color),
|
||||
transparent 92%
|
||||
);
|
||||
}
|
||||
@@ -150,7 +149,7 @@
|
||||
|
||||
color: color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-close-color),
|
||||
var(--advanced-camera-card-notification-close-color),
|
||||
transparent 40%
|
||||
);
|
||||
|
||||
@@ -166,17 +165,17 @@
|
||||
}
|
||||
|
||||
// Base control hover color transition (from dimmed to full).
|
||||
&:not([class^='emphasis-']):hover {
|
||||
color: var(--advanced-camera-card-overlay-message-close-color);
|
||||
&:not([class^='severity-']):hover {
|
||||
color: var(--advanced-camera-card-notification-close-color);
|
||||
}
|
||||
|
||||
&.emphasis-low {
|
||||
&.severity-low {
|
||||
color: var(--advanced-camera-card-foreground-severity-low-color);
|
||||
}
|
||||
&.emphasis-medium {
|
||||
&.severity-medium {
|
||||
color: var(--advanced-camera-card-foreground-severity-medium-color);
|
||||
}
|
||||
&.emphasis-high {
|
||||
&.severity-high {
|
||||
color: var(--advanced-camera-card-foreground-severity-high-color);
|
||||
}
|
||||
}
|
||||
@@ -194,12 +193,12 @@
|
||||
|
||||
background: color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-close-color),
|
||||
var(--advanced-camera-card-notification-close-color),
|
||||
transparent 95%
|
||||
);
|
||||
color: color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-close-color),
|
||||
var(--advanced-camera-card-notification-close-color),
|
||||
transparent 40%
|
||||
);
|
||||
|
||||
@@ -210,10 +209,10 @@
|
||||
.close:hover {
|
||||
background: color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-close-color),
|
||||
var(--advanced-camera-card-notification-close-color),
|
||||
transparent 90%
|
||||
);
|
||||
color: var(--advanced-camera-card-overlay-message-close-color);
|
||||
color: var(--advanced-camera-card-notification-close-color);
|
||||
}
|
||||
|
||||
.close advanced-camera-card-icon {
|
||||
@@ -233,7 +232,7 @@
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
color: var(--advanced-camera-card-overlay-message-text-color);
|
||||
color: var(--advanced-camera-card-notification-text-color);
|
||||
font-size: 14px;
|
||||
line-height: 1.4;
|
||||
|
||||
@@ -261,15 +260,15 @@
|
||||
}
|
||||
}
|
||||
|
||||
&.emphasis-low advanced-camera-card-icon {
|
||||
&.severity-low advanced-camera-card-icon {
|
||||
color: var(--advanced-camera-card-foreground-severity-low-color);
|
||||
opacity: 1;
|
||||
}
|
||||
&.emphasis-medium advanced-camera-card-icon {
|
||||
&.severity-medium advanced-camera-card-icon {
|
||||
color: var(--advanced-camera-card-foreground-severity-medium-color);
|
||||
opacity: 1;
|
||||
}
|
||||
&.emphasis-high advanced-camera-card-icon {
|
||||
&.severity-high advanced-camera-card-icon {
|
||||
color: var(--advanced-camera-card-foreground-severity-high-color);
|
||||
opacity: 1;
|
||||
}
|
||||
@@ -282,10 +281,10 @@
|
||||
border-top: 1px solid
|
||||
color-mix(
|
||||
in srgb,
|
||||
var(--advanced-camera-card-overlay-message-text-color),
|
||||
var(--advanced-camera-card-notification-text-color),
|
||||
transparent 80%
|
||||
);
|
||||
color: var(--advanced-camera-card-overlay-message-text-color);
|
||||
color: var(--advanced-camera-card-notification-text-color);
|
||||
font-size: 14px;
|
||||
line-height: 1.5;
|
||||
white-space: pre-wrap;
|
||||
@@ -64,6 +64,7 @@
|
||||
|
||||
.item.action {
|
||||
cursor: pointer;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
img.item,
|
||||
|
||||
+12
-12
@@ -286,24 +286,24 @@
|
||||
transparent 20%
|
||||
);
|
||||
|
||||
/******************
|
||||
* Overlay Message
|
||||
******************/
|
||||
--advanced-camera-card-overlay-message-background: linear-gradient(
|
||||
/**************
|
||||
* Notification
|
||||
**************/
|
||||
--advanced-camera-card-notification-background: linear-gradient(
|
||||
135deg,
|
||||
rgba(35, 35, 35, 0.75) 0%,
|
||||
rgba(15, 15, 15, 0.65) 100%
|
||||
);
|
||||
--advanced-camera-card-overlay-message-backdrop-filter: blur(20px) saturate(180%);
|
||||
--advanced-camera-card-overlay-message-border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
--advanced-camera-card-overlay-message-border-top: 1px solid rgba(255, 255, 255, 0.15);
|
||||
--advanced-camera-card-overlay-message-box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5),
|
||||
--advanced-camera-card-notification-backdrop-filter: blur(20px) saturate(180%);
|
||||
--advanced-camera-card-notification-border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
--advanced-camera-card-notification-border-top: 1px solid rgba(255, 255, 255, 0.15);
|
||||
--advanced-camera-card-notification-box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5),
|
||||
0 2px 8px 0 rgba(0, 0, 0, 0.3), inset 0 0 0 1px rgba(255, 255, 255, 0.05);
|
||||
|
||||
--advanced-camera-card-overlay-message-text-color: #ffffff;
|
||||
--advanced-camera-card-overlay-message-icon-color: var(
|
||||
--advanced-camera-card-notification-text-color: #ffffff;
|
||||
--advanced-camera-card-notification-icon-color: var(
|
||||
--advanced-camera-card-foreground-primary
|
||||
);
|
||||
--advanced-camera-card-overlay-message-scrollbar-color: rgba(255, 255, 255, 0.2);
|
||||
--advanced-camera-card-overlay-message-close-color: #ffffff;
|
||||
--advanced-camera-card-notification-scrollbar-color: rgba(255, 255, 255, 0.2);
|
||||
--advanced-camera-card-notification-close-color: #ffffff;
|
||||
}
|
||||
|
||||
+10
-10
@@ -522,20 +522,20 @@
|
||||
// Menu border colors need to re-adjust based on redefined variable.
|
||||
--wa-color-surface-border: var(--ha-color-border-neutral-quiet);
|
||||
|
||||
/******************
|
||||
* Overlay Message
|
||||
******************/
|
||||
--advanced-camera-card-overlay-message-background: linear-gradient(
|
||||
/**************
|
||||
* Notification
|
||||
**************/
|
||||
--advanced-camera-card-notification-background: linear-gradient(
|
||||
135deg,
|
||||
rgba(255, 255, 255, 0.85) 0%,
|
||||
rgba(235, 235, 235, 0.75) 100%
|
||||
);
|
||||
--advanced-camera-card-overlay-message-text-color: var(--primary-text-color);
|
||||
--advanced-camera-card-overlay-message-border: 1px solid rgba(0, 0, 0, 0.3);
|
||||
--advanced-camera-card-overlay-message-border-top: 1px solid rgba(0, 0, 0, 0.2);
|
||||
--advanced-camera-card-overlay-message-box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3),
|
||||
--advanced-camera-card-notification-text-color: var(--primary-text-color);
|
||||
--advanced-camera-card-notification-border: 1px solid rgba(0, 0, 0, 0.3);
|
||||
--advanced-camera-card-notification-border-top: 1px solid rgba(0, 0, 0, 0.2);
|
||||
--advanced-camera-card-notification-box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3),
|
||||
0 2px 8px 0 rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(255, 255, 255, 0.8);
|
||||
--advanced-camera-card-overlay-message-scrollbar-color: rgba(0, 0, 0, 0.5);
|
||||
--advanced-camera-card-overlay-message-close-color: #000000;
|
||||
--advanced-camera-card-notification-scrollbar-color: rgba(0, 0, 0, 0.5);
|
||||
--advanced-camera-card-notification-close-color: #000000;
|
||||
--app-header-text-color: white;
|
||||
}
|
||||
|
||||
@@ -15,6 +15,6 @@ $z-index-loading: 6;
|
||||
|
||||
// Need menu to render above drawer (so the drawer button is below menu-submenus)
|
||||
$z-index-menu: 4;
|
||||
$z-index-overlay-message: 4;
|
||||
$z-index-notification: 4;
|
||||
$z-index-drawer: 3;
|
||||
$z-index-status-bar: 2;
|
||||
|
||||
Reference in New Issue
Block a user