ywana-core8 0.0.769 → 0.0.770
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/db/db.json +6 -18
- package/dist/index.cjs +64 -35
- package/dist/index.cjs.map +1 -1
- package/dist/index.modern.js +64 -35
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +64 -35
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/html/tab.js +3 -1
- package/src/incubator/task-test.js +44 -11
- package/src/incubator/task.js +57 -31
package/db/db.json
CHANGED
@@ -1,24 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"tasks": [
|
3
3
|
{
|
4
|
-
"
|
5
|
-
"
|
6
|
-
"
|
7
|
-
|
8
|
-
|
9
|
-
"
|
10
|
-
"init": "Thu Oct 20 2022 17:35:14 GMT+0200 (hora de verano de Europa central)",
|
11
|
-
"id": 2
|
12
|
-
},
|
13
|
-
{
|
14
|
-
"description": "Test Task 1666280157411",
|
15
|
-
"init": "Thu Oct 20 2022 17:35:57 GMT+0200 (hora de verano de Europa central)",
|
16
|
-
"id": 3
|
17
|
-
},
|
18
|
-
{
|
19
|
-
"description": "Test Task 1666280363301",
|
20
|
-
"init": "Thu Oct 20 2022 17:39:23 GMT+0200 (hora de verano de Europa central)",
|
21
|
-
"id": 4
|
4
|
+
"name": "TEST",
|
5
|
+
"description": "Test Task 1671191671807",
|
6
|
+
"result": "OK",
|
7
|
+
"id": 1,
|
8
|
+
"progress": 50,
|
9
|
+
"percentage": 3292
|
22
10
|
}
|
23
11
|
],
|
24
12
|
"references": [
|
package/dist/index.cjs
CHANGED
@@ -1101,6 +1101,7 @@ var Tabs = function Tabs(props) {
|
|
1101
1101
|
|
1102
1102
|
var Tab = function Tab(props) {
|
1103
1103
|
var id = props.id,
|
1104
|
+
icon = props.icon,
|
1104
1105
|
label = props.label,
|
1105
1106
|
selected = props.selected,
|
1106
1107
|
actions = props.actions,
|
@@ -1114,7 +1115,10 @@ var Tab = function Tab(props) {
|
|
1114
1115
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
1115
1116
|
className: "tab " + style,
|
1116
1117
|
onClick: select
|
1117
|
-
},
|
1118
|
+
}, icon ? /*#__PURE__*/React__default["default"].createElement(Icon, {
|
1119
|
+
icon: icon,
|
1120
|
+
size: "small"
|
1121
|
+
}) : null, label, actions ? actions : null);
|
1118
1122
|
};
|
1119
1123
|
/**
|
1120
1124
|
* Stack
|
@@ -10971,11 +10975,10 @@ function _catch(body, recover) {
|
|
10971
10975
|
|
10972
10976
|
var TaskContext = React__default["default"].createContext({});
|
10973
10977
|
var TaskContextProvider = function TaskContextProvider(props) {
|
10974
|
-
var removeTask = function removeTask(
|
10978
|
+
var removeTask = function removeTask(task) {
|
10975
10979
|
try {
|
10976
10980
|
return Promise.resolve(_catch(function () {
|
10977
|
-
|
10978
|
-
return Promise.resolve(API.remove(id));
|
10981
|
+
return Promise.resolve(API.remove(task.id));
|
10979
10982
|
}, function (error) {
|
10980
10983
|
console.log("removeTask error", error);
|
10981
10984
|
}));
|
@@ -10984,11 +10987,23 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
10984
10987
|
}
|
10985
10988
|
};
|
10986
10989
|
|
10990
|
+
var updateTask = function updateTask(task) {
|
10991
|
+
try {
|
10992
|
+
return Promise.resolve(_catch(function () {
|
10993
|
+
return Promise.resolve(API.update(task));
|
10994
|
+
}, function (error) {
|
10995
|
+
console.log("updateTask error", error);
|
10996
|
+
}));
|
10997
|
+
} catch (e) {
|
10998
|
+
return Promise.reject(e);
|
10999
|
+
}
|
11000
|
+
};
|
11001
|
+
|
10987
11002
|
var createTask = function createTask(task, listener) {
|
10988
11003
|
try {
|
10989
11004
|
return Promise.resolve(_catch(function () {
|
10990
11005
|
return Promise.resolve(API.create(task)).then(function (response) {
|
10991
|
-
if (listener) addListener(
|
11006
|
+
if (listener) addListener(taskName, listener);
|
10992
11007
|
return response;
|
10993
11008
|
});
|
10994
11009
|
}, function (error) {
|
@@ -11028,38 +11043,35 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
11028
11043
|
url = _props$url === void 0 ? "/tasks" : _props$url,
|
11029
11044
|
_props$frequency = props.frequency,
|
11030
11045
|
frequency = _props$frequency === void 0 ? 5000 : _props$frequency,
|
11031
|
-
children = props.children
|
11046
|
+
children = props.children,
|
11047
|
+
_props$listeners = props.listeners,
|
11048
|
+
listeners = _props$listeners === void 0 ? {} : _props$listeners;
|
11032
11049
|
var API = CollectionAPI$1(url, host);
|
11033
|
-
var listeners = [];
|
11034
11050
|
|
11035
|
-
|
11036
|
-
|
11037
|
-
|
11038
|
-
|
11039
|
-
listener: listener
|
11040
|
-
});
|
11041
|
-
return listenerId;
|
11051
|
+
var _listeners = Object.assign({}, listeners);
|
11052
|
+
|
11053
|
+
function addListener(taskName, listener) {
|
11054
|
+
_listeners[taskName] = listener;
|
11042
11055
|
}
|
11043
11056
|
|
11044
|
-
function removeListener(
|
11045
|
-
|
11046
|
-
if (listener.taskId === taskId) {
|
11047
|
-
listeners.splice(index, 1);
|
11048
|
-
}
|
11049
|
-
});
|
11057
|
+
function removeListener(taskName) {
|
11058
|
+
delete _listeners[taskName];
|
11050
11059
|
}
|
11051
11060
|
|
11052
11061
|
React.useEffect(function () {
|
11053
11062
|
var interval = setInterval(function () {
|
11054
11063
|
try {
|
11055
11064
|
return Promise.resolve(API.all()).then(function (tasks) {
|
11056
|
-
listeners
|
11057
|
-
|
11058
|
-
|
11059
|
-
|
11060
|
-
|
11065
|
+
// invoque listeners for each task
|
11066
|
+
Object.entries(_listeners).forEach(function (_ref) {
|
11067
|
+
var taskName = _ref[0],
|
11068
|
+
listener = _ref[1];
|
11069
|
+
var listenerTasks = tasks.filter(function (task) {
|
11070
|
+
return task.name === taskName;
|
11071
|
+
});
|
11072
|
+
listenerTasks.forEach(function (task) {
|
11073
|
+
return listener(task, value);
|
11061
11074
|
});
|
11062
|
-
if (task) listener(task);
|
11063
11075
|
});
|
11064
11076
|
});
|
11065
11077
|
} catch (e) {
|
@@ -11074,6 +11086,7 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
11074
11086
|
tasks: tasks,
|
11075
11087
|
task: task,
|
11076
11088
|
createTask: createTask,
|
11089
|
+
updateTask: updateTask,
|
11077
11090
|
removeTask: removeTask,
|
11078
11091
|
addListener: addListener,
|
11079
11092
|
removeListener: removeListener
|
@@ -11134,7 +11147,8 @@ var TaskProgress = function TaskProgress(props) {
|
|
11134
11147
|
var TaskMonitor = function TaskMonitor(props) {
|
11135
11148
|
var remove = function remove(task) {
|
11136
11149
|
try {
|
11137
|
-
|
11150
|
+
console.log("remove", task);
|
11151
|
+
return Promise.resolve(context.removeTask(task)).then(function () {
|
11138
11152
|
refresh();
|
11139
11153
|
});
|
11140
11154
|
} catch (e) {
|
@@ -11154,7 +11168,8 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11154
11168
|
|
11155
11169
|
var _props$title = props.title,
|
11156
11170
|
title = _props$title === void 0 ? "Task Monitor" : _props$title,
|
11157
|
-
filters = props.filters
|
11171
|
+
filters = props.filters,
|
11172
|
+
editors = props.editors;
|
11158
11173
|
var context = React.useContext(TaskContext);
|
11159
11174
|
|
11160
11175
|
var _useState2 = React.useState([]),
|
@@ -11208,16 +11223,16 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11208
11223
|
rows: tasks.map(function (task) {
|
11209
11224
|
return {
|
11210
11225
|
id: task.id,
|
11211
|
-
|
11212
|
-
init: task.init,
|
11213
|
-
end: task.end,
|
11214
|
-
owner: task.owner,
|
11226
|
+
state: task.state,
|
11215
11227
|
description: task.description,
|
11216
|
-
percentage: task.percentage,
|
11217
11228
|
progress: /*#__PURE__*/React__default["default"].createElement(LinearProgress, {
|
11218
11229
|
progress: task.percentage
|
11219
11230
|
}),
|
11220
|
-
|
11231
|
+
percentage: task.percentage,
|
11232
|
+
init: task.init,
|
11233
|
+
end: task.end,
|
11234
|
+
resourceID: task.resourceID,
|
11235
|
+
owner: task.owner,
|
11221
11236
|
actions: /*#__PURE__*/React__default["default"].createElement(Icon, {
|
11222
11237
|
size: "small",
|
11223
11238
|
icon: "cancel",
|
@@ -11225,7 +11240,11 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11225
11240
|
action: function action() {
|
11226
11241
|
return remove(task);
|
11227
11242
|
}
|
11228
|
-
})
|
11243
|
+
}),
|
11244
|
+
info: editors && task.result ? /*#__PURE__*/React__default["default"].createElement(TaskInfo, {
|
11245
|
+
task: task,
|
11246
|
+
editors: editors
|
11247
|
+
}) : null
|
11229
11248
|
};
|
11230
11249
|
})
|
11231
11250
|
};
|
@@ -11236,6 +11255,16 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11236
11255
|
title: title
|
11237
11256
|
}), /*#__PURE__*/React__default["default"].createElement("main", null, /*#__PURE__*/React__default["default"].createElement(DataTable, table)));
|
11238
11257
|
};
|
11258
|
+
/**
|
11259
|
+
* Task Info
|
11260
|
+
*/
|
11261
|
+
|
11262
|
+
var TaskInfo = function TaskInfo(props) {
|
11263
|
+
var task = props.task,
|
11264
|
+
editors = props.editors;
|
11265
|
+
var editor = editors ? editors[task.action] : null;
|
11266
|
+
return editor(task);
|
11267
|
+
};
|
11239
11268
|
|
11240
11269
|
var isFunction = function isFunction(value) {
|
11241
11270
|
return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
|