powr-sdk-web 4.1.7 → 4.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tasks/index.js +138 -7
- package/package.json +1 -1
package/dist/tasks/index.js
CHANGED
|
@@ -218,7 +218,11 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
218
218
|
_useState10 = _slicedToArray(_useState1, 2),
|
|
219
219
|
editingTask = _useState10[0],
|
|
220
220
|
setEditingTask = _useState10[1];
|
|
221
|
-
var _useState11 = (0, _react.useState)(
|
|
221
|
+
var _useState11 = (0, _react.useState)(new Set()),
|
|
222
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
223
|
+
expandedWorkflows = _useState12[0],
|
|
224
|
+
setExpandedWorkflows = _useState12[1];
|
|
225
|
+
var _useState13 = (0, _react.useState)({
|
|
222
226
|
name: '',
|
|
223
227
|
description: '',
|
|
224
228
|
cronExpression: '',
|
|
@@ -227,9 +231,9 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
227
231
|
params: {},
|
|
228
232
|
isActive: true
|
|
229
233
|
}),
|
|
230
|
-
|
|
231
|
-
formData =
|
|
232
|
-
setFormData =
|
|
234
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
235
|
+
formData = _useState14[0],
|
|
236
|
+
setFormData = _useState14[1];
|
|
233
237
|
(0, _react.useEffect)(function () {
|
|
234
238
|
fetchTasks();
|
|
235
239
|
fetchTools();
|
|
@@ -517,6 +521,93 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
517
521
|
});
|
|
518
522
|
return (action === null || action === void 0 ? void 0 : action.name) || actionId;
|
|
519
523
|
};
|
|
524
|
+
var toggleWorkflowExpansion = function toggleWorkflowExpansion(taskId) {
|
|
525
|
+
setExpandedWorkflows(function (prev) {
|
|
526
|
+
var newSet = new Set(prev);
|
|
527
|
+
if (newSet.has(taskId)) {
|
|
528
|
+
newSet["delete"](taskId);
|
|
529
|
+
} else {
|
|
530
|
+
newSet.add(taskId);
|
|
531
|
+
}
|
|
532
|
+
return newSet;
|
|
533
|
+
});
|
|
534
|
+
};
|
|
535
|
+
var renderWorkflowSteps = function renderWorkflowSteps(task) {
|
|
536
|
+
if (!task.steps || task.steps.length === 0) {
|
|
537
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
538
|
+
style: {
|
|
539
|
+
color: '#6b7280',
|
|
540
|
+
fontSize: '0.8rem'
|
|
541
|
+
}
|
|
542
|
+
}, "No steps defined");
|
|
543
|
+
}
|
|
544
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
545
|
+
style: {
|
|
546
|
+
marginTop: '8px',
|
|
547
|
+
padding: '12px',
|
|
548
|
+
background: '#f8fafc',
|
|
549
|
+
borderRadius: '8px',
|
|
550
|
+
border: '1px solid #e2e8f0'
|
|
551
|
+
}
|
|
552
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
553
|
+
style: {
|
|
554
|
+
fontSize: '0.75rem',
|
|
555
|
+
fontWeight: '600',
|
|
556
|
+
color: '#374151',
|
|
557
|
+
marginBottom: '8px',
|
|
558
|
+
textTransform: 'uppercase',
|
|
559
|
+
letterSpacing: '0.05em'
|
|
560
|
+
}
|
|
561
|
+
}, "Workflow Steps"), task.steps.map(function (step, index) {
|
|
562
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
563
|
+
key: step.id || index,
|
|
564
|
+
style: {
|
|
565
|
+
padding: '8px 12px',
|
|
566
|
+
margin: '4px 0',
|
|
567
|
+
background: 'white',
|
|
568
|
+
borderRadius: '6px',
|
|
569
|
+
border: '1px solid #e2e8f0',
|
|
570
|
+
fontSize: '0.8rem'
|
|
571
|
+
}
|
|
572
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
573
|
+
style: {
|
|
574
|
+
display: 'flex',
|
|
575
|
+
alignItems: 'center',
|
|
576
|
+
gap: '8px',
|
|
577
|
+
marginBottom: '4px'
|
|
578
|
+
}
|
|
579
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
580
|
+
style: {
|
|
581
|
+
padding: '2px 6px',
|
|
582
|
+
borderRadius: '4px',
|
|
583
|
+
fontSize: '0.7rem',
|
|
584
|
+
fontWeight: '600',
|
|
585
|
+
background: step.type === 'condition' ? '#dbeafe' : '#dcfce7',
|
|
586
|
+
color: step.type === 'condition' ? '#1d4ed8' : '#166534'
|
|
587
|
+
}
|
|
588
|
+
}, step.type === 'condition' ? '🔍' : '⚡', " ", step.type), /*#__PURE__*/_react["default"].createElement("span", {
|
|
589
|
+
style: {
|
|
590
|
+
fontWeight: '500',
|
|
591
|
+
color: '#374151'
|
|
592
|
+
}
|
|
593
|
+
}, "Step ", index + 1)), /*#__PURE__*/_react["default"].createElement("div", {
|
|
594
|
+
style: {
|
|
595
|
+
color: '#6b7280',
|
|
596
|
+
marginBottom: '4px'
|
|
597
|
+
}
|
|
598
|
+
}, step.description || "".concat(getToolName(step.toolId), " \u2192 ").concat(getActionName(step.toolId, step.actionId))), step.condition && /*#__PURE__*/_react["default"].createElement("div", {
|
|
599
|
+
style: {
|
|
600
|
+
fontSize: '0.7rem',
|
|
601
|
+
color: '#3b82f6',
|
|
602
|
+
fontStyle: 'italic',
|
|
603
|
+
background: '#eff6ff',
|
|
604
|
+
padding: '2px 6px',
|
|
605
|
+
borderRadius: '3px',
|
|
606
|
+
display: 'inline-block'
|
|
607
|
+
}
|
|
608
|
+
}, "Condition: ", step.condition));
|
|
609
|
+
}));
|
|
610
|
+
};
|
|
520
611
|
var formatCronExpression = function formatCronExpression(cron) {
|
|
521
612
|
if (!cron) return 'Manual';
|
|
522
613
|
var parts = cron.split(' ');
|
|
@@ -531,6 +622,27 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
531
622
|
}
|
|
532
623
|
return cron;
|
|
533
624
|
};
|
|
625
|
+
var formatSchedule = function formatSchedule(schedule) {
|
|
626
|
+
if (!schedule) return 'Manual';
|
|
627
|
+
|
|
628
|
+
// Check if it's a cron expression (contains spaces and asterisks)
|
|
629
|
+
if (schedule.includes(' ') && schedule.includes('*')) {
|
|
630
|
+
return formatCronExpression(schedule);
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
// Check if it's an ISO timestamp
|
|
634
|
+
try {
|
|
635
|
+
var date = new Date(schedule);
|
|
636
|
+
if (!isNaN(date.getTime())) {
|
|
637
|
+
return date.toLocaleString();
|
|
638
|
+
}
|
|
639
|
+
} catch (e) {
|
|
640
|
+
// Not a valid date
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
// Fallback to showing the raw schedule
|
|
644
|
+
return schedule;
|
|
645
|
+
};
|
|
534
646
|
var formatDate = function formatDate(dateString) {
|
|
535
647
|
if (!dateString) return 'Never';
|
|
536
648
|
return new Date(dateString).toLocaleString();
|
|
@@ -609,7 +721,26 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
609
721
|
fontSize: '0.8rem',
|
|
610
722
|
fontWeight: '500'
|
|
611
723
|
}
|
|
612
|
-
}, task.type === 'workflow' ? /*#__PURE__*/_react["default"].createElement("
|
|
724
|
+
}, task.type === 'workflow' ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
725
|
+
style: {
|
|
726
|
+
display: 'flex',
|
|
727
|
+
alignItems: 'center',
|
|
728
|
+
gap: '8px'
|
|
729
|
+
}
|
|
730
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, "\uD83D\uDD04 Workflow (", ((_task$steps = task.steps) === null || _task$steps === void 0 ? void 0 : _task$steps.length) || 0, " steps)"), /*#__PURE__*/_react["default"].createElement("button", {
|
|
731
|
+
onClick: function onClick() {
|
|
732
|
+
return toggleWorkflowExpansion(task._id);
|
|
733
|
+
},
|
|
734
|
+
style: {
|
|
735
|
+
background: 'none',
|
|
736
|
+
border: 'none',
|
|
737
|
+
cursor: 'pointer',
|
|
738
|
+
padding: '2px',
|
|
739
|
+
color: '#3b82f6',
|
|
740
|
+
fontSize: '0.7rem'
|
|
741
|
+
},
|
|
742
|
+
title: expandedWorkflows.has(task._id) ? 'Hide steps' : 'Show steps'
|
|
743
|
+
}, expandedWorkflows.has(task._id) ? '▼' : '▶')) : /*#__PURE__*/_react["default"].createElement("span", null, getToolName(task.toolId || 'Unknown'), " \u2192 ", getActionName(task.toolId || 'unknown', task.actionId || 'unknown'))), task.type === 'workflow' && expandedWorkflows.has(task._id) && renderWorkflowSteps(task))), /*#__PURE__*/_react["default"].createElement("td", {
|
|
613
744
|
style: styles.tableCell
|
|
614
745
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
615
746
|
style: {
|
|
@@ -620,14 +751,14 @@ var PowrBaseTasks = function PowrBaseTasks(_ref) {
|
|
|
620
751
|
padding: '4px 8px',
|
|
621
752
|
borderRadius: '4px'
|
|
622
753
|
}
|
|
623
|
-
}, task.type === 'workflow' ? /*#__PURE__*/_react["default"].createElement("span", null, "\uD83D\uDD50 ", task.
|
|
754
|
+
}, task.type === 'workflow' ? /*#__PURE__*/_react["default"].createElement("span", null, "\uD83D\uDD50 ", formatSchedule(task.scheduledFor || task.schedule)) : /*#__PURE__*/_react["default"].createElement("span", null, formatCronExpression(task.cronExpression)))), /*#__PURE__*/_react["default"].createElement("td", {
|
|
624
755
|
style: styles.tableCell
|
|
625
756
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
626
757
|
style: {
|
|
627
758
|
color: '#6b7280',
|
|
628
759
|
fontSize: '0.85rem'
|
|
629
760
|
}
|
|
630
|
-
},
|
|
761
|
+
}, task.lastRun ? formatDate(task.lastRun) : 'Never')), /*#__PURE__*/_react["default"].createElement("td", {
|
|
631
762
|
style: styles.tableCell
|
|
632
763
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
633
764
|
style: _objectSpread(_objectSpread({}, styles.statusBadge), task.isActive !== false ? styles.statusActive : styles.statusInactive)
|