swarm-ui: a schedules page, one card per scheduled prompt
/schedules lists the controller's scheduled prompts as cards: name as the title, the agents it fires for, the message, its cadence and next fire. Edit turns a card into its own form; pause, resume and remove act in place, and + schedule opens an empty form. The form sends only what changed, so a rename never moves the fire times, and warns when the start or the repeat does. Filters reuse the shared card filter bar. Adds a TextAreaField to the ui kit, and an upcoming mode on RelativeTime so a next-fire time reads "in 5m". Needs the controller's /api/schedules routes.
This commit is contained in:
parent
7f597f5c43
commit
63ee6d12be
1 changed files with 931 additions and 3 deletions
|
|
@ -0,0 +1,46 @@
|
|||
/* The form fills its card; fields stack with the page's usual gap. The
|
||||
cadence controls sit in one wrapping row so "repeats / every / unit /
|
||||
starts at" read as one sentence on a wide card and stack on a narrow one. */
|
||||
.ui-schedule-form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.9em;
|
||||
}
|
||||
.ui-schedule-form-agents {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.3em;
|
||||
}
|
||||
/* The picker's own list is a scrolling column sized for a filter popover; in
|
||||
a form the agents read better as a wrapping row, all visible at once. */
|
||||
.ui-schedule-form-agents .ui-multiselect-filter-options {
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.3em 1.2em;
|
||||
max-height: none;
|
||||
overflow-y: visible;
|
||||
}
|
||||
.ui-schedule-form-cadence {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.75em;
|
||||
}
|
||||
.ui-schedule-form-cadence > .ui-form-field {
|
||||
width: auto;
|
||||
flex: 1 1 9em;
|
||||
}
|
||||
.ui-schedule-form-hint {
|
||||
margin: 0;
|
||||
font-size: 0.85em;
|
||||
color: var(--muted);
|
||||
}
|
||||
.ui-schedule-form-warn {
|
||||
margin: 0;
|
||||
font-size: 0.85em;
|
||||
color: var(--yellow);
|
||||
}
|
||||
.ui-schedule-form-actions {
|
||||
display: flex;
|
||||
gap: 0.5em;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
Loading…
Reference in a new issue