feat: add campaign templates and recurring schedules
Deploy Telegram Bot / build-and-push (push) Successful in 3m49s
Deploy Telegram Bot / deploy (push) Successful in 10s

This commit is contained in:
2026-04-28 10:01:18 +03:00
parent a1ec688ec8
commit 0218890a7a
17 changed files with 1075 additions and 14 deletions
+56 -3
View File
@@ -1,5 +1,5 @@
/* ============================================
GM-Relay Design System v1.7.0
GM-Relay Design System v1.8.0
Dark RPG Dashboard Theme
============================================ */
@@ -618,6 +618,55 @@ select option {
white-space: nowrap;
}
/* === Campaign templates === */
.campaign-template-panel {
margin-bottom: 1.5rem;
}
.campaign-template-fields {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 0.75rem;
}
.campaign-template-list {
margin-top: 1rem;
border-top: 1px solid var(--border-color);
}
.campaign-template-row {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(360px, auto);
gap: 1rem;
align-items: center;
padding: 1rem 0;
border-bottom: 1px solid var(--border-color);
}
.campaign-template-row:last-child {
border-bottom: none;
padding-bottom: 0;
}
.campaign-template-info h3 {
font-size: 0.9375rem;
margin-bottom: 0.25rem;
overflow-wrap: anywhere;
}
.campaign-template-info p {
margin: 0;
color: var(--text-muted);
font-size: 0.8125rem;
}
.campaign-template-actions {
display: grid;
grid-template-columns: minmax(190px, 1fr) auto auto;
gap: 0.75rem;
align-items: center;
}
/* === Animations === */
@keyframes fadeIn {
from { opacity: 0; transform: translateY(8px); }
@@ -838,11 +887,15 @@ select option {
}
.batch-bulk-fields,
.batch-clone-row {
.batch-clone-row,
.campaign-template-fields,
.campaign-template-row,
.campaign-template-actions {
grid-template-columns: 1fr;
}
.batch-clone-row .btn-gm {
.batch-clone-row .btn-gm,
.campaign-template-actions .btn-gm {
justify-content: center;
width: 100%;
}