0.10.2-17 Queue Update

This commit is contained in:
2026-03-17 11:25:41 +00:00
parent 4008e4eb47
commit 57ffc40a95
7 changed files with 28 additions and 18 deletions
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "ripster-backend", "name": "ripster-backend",
"version": "0.10.2-16", "version": "0.10.2-17",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "ripster-backend", "name": "ripster-backend",
"version": "0.10.2-16", "version": "0.10.2-17",
"dependencies": { "dependencies": {
"archiver": "^7.0.1", "archiver": "^7.0.1",
"cors": "^2.8.5", "cors": "^2.8.5",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "ripster-backend", "name": "ripster-backend",
"version": "0.10.2-16", "version": "0.10.2-17",
"private": true, "private": true,
"type": "commonjs", "type": "commonjs",
"scripts": { "scripts": {
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "ripster-frontend", "name": "ripster-frontend",
"version": "0.10.2-16", "version": "0.10.2-17",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "ripster-frontend", "name": "ripster-frontend",
"version": "0.10.2-16", "version": "0.10.2-17",
"dependencies": { "dependencies": {
"primeicons": "^7.0.0", "primeicons": "^7.0.0",
"primereact": "^10.9.2", "primereact": "^10.9.2",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "ripster-frontend", "name": "ripster-frontend",
"version": "0.10.2-16", "version": "0.10.2-17",
"private": true, "private": true,
"type": "module", "type": "module",
"scripts": { "scripts": {
+19 -9
View File
@@ -1794,6 +1794,11 @@ export default function DashboardPage({
}; };
const openInsertQueueDialog = async (afterEntryId) => { const openInsertQueueDialog = async (afterEntryId) => {
const hasJob = (queueState?.runningJobs || []).some((i) => i.jobId != null)
|| (queueState?.queuedJobs || []).some((i) => i.jobId != null);
if (!hasJob) {
return;
}
setInsertQueueDialog({ visible: true, afterEntryId: afterEntryId ?? null }); setInsertQueueDialog({ visible: true, afterEntryId: afterEntryId ?? null });
try { try {
const [scriptsRes, chainsRes] = await Promise.allSettled([api.getScripts(), api.getScriptChains()]); const [scriptsRes, chainsRes] = await Promise.allSettled([api.getScripts(), api.getScriptChains()]);
@@ -1971,6 +1976,8 @@ export default function DashboardPage({
const queueRunningJobs = Array.isArray(queueState?.runningJobs) ? queueState.runningJobs : []; const queueRunningJobs = Array.isArray(queueState?.runningJobs) ? queueState.runningJobs : [];
const queuedJobs = Array.isArray(queueState?.queuedJobs) ? queueState.queuedJobs : []; const queuedJobs = Array.isArray(queueState?.queuedJobs) ? queueState.queuedJobs : [];
const canReorderQueue = queuedJobs.length > 1 && !queueReorderBusy; const canReorderQueue = queuedJobs.length > 1 && !queueReorderBusy;
const queueHasJobEntry = queueRunningJobs.some((i) => i.jobId != null)
|| queuedJobs.some((i) => i.jobId != null);
const buildRunningQueueScriptKey = (jobId) => `running-${normalizeJobId(jobId) || '-'}`; const buildRunningQueueScriptKey = (jobId) => `running-${normalizeJobId(jobId) || '-'}`;
const buildQueuedQueueScriptKey = (entryId) => `queued-${Number(entryId) || '-'}`; const buildQueuedQueueScriptKey = (entryId) => `queued-${Number(entryId) || '-'}`;
const toggleQueueScriptDetails = (key) => { const toggleQueueScriptDetails = (key) => {
@@ -2578,7 +2585,8 @@ export default function DashboardPage({
<button <button
type="button" type="button"
className="queue-add-entry-btn" className="queue-add-entry-btn"
title="Skript, Kette oder Wartezeit zur Queue hinzufügen" title={queueHasJobEntry ? 'Skript, Kette oder Wartezeit zur Queue hinzufügen' : 'Nur möglich wenn mind. ein Job in der Queue ist'}
disabled={!queueHasJobEntry}
onClick={() => void openInsertQueueDialog(null)} onClick={() => void openInsertQueueDialog(null)}
> >
<i className="pi pi-plus" /> Hinzufügen <i className="pi pi-plus" /> Hinzufügen
@@ -2667,14 +2675,16 @@ export default function DashboardPage({
</div> </div>
</div> </div>
{detailsExpanded ? <QueueJobScriptSummary item={item} /> : null} {detailsExpanded ? <QueueJobScriptSummary item={item} /> : null}
<button {queueHasJobEntry ? (
type="button" <button
className="queue-insert-btn" type="button"
title="Eintrag danach einfügen" className="queue-insert-btn"
onClick={() => void openInsertQueueDialog(entryId)} title="Eintrag danach einfügen"
> onClick={() => void openInsertQueueDialog(entryId)}
<i className="pi pi-plus" /> >
</button> <i className="pi pi-plus" />
</button>
) : null}
</div> </div>
); );
})} })}
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "ripster", "name": "ripster",
"version": "0.10.2-16", "version": "0.10.2-17",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "ripster", "name": "ripster",
"version": "0.10.2-16", "version": "0.10.2-17",
"devDependencies": { "devDependencies": {
"concurrently": "^9.1.2" "concurrently": "^9.1.2"
} }
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"name": "ripster", "name": "ripster",
"private": true, "private": true,
"version": "0.10.2-16", "version": "0.10.2-17",
"scripts": { "scripts": {
"dev": "concurrently \"npm run dev --prefix backend\" \"npm run dev --prefix frontend\"", "dev": "concurrently \"npm run dev --prefix backend\" \"npm run dev --prefix frontend\"",
"dev:backend": "npm run dev --prefix backend", "dev:backend": "npm run dev --prefix backend",