ywana-core8 0.0.768 → 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 +83 -41
- package/dist/index.cjs.map +1 -1
- package/dist/index.modern.js +83 -41
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +83 -41
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/domain2/CollectionContext.js +15 -2
- 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
|
@@ -10361,6 +10365,8 @@ var CollectionContextProvider = function CollectionContextProvider(props) {
|
|
10361
10365
|
|
10362
10366
|
var load = function load() {
|
10363
10367
|
try {
|
10368
|
+
var _exit2;
|
10369
|
+
|
10364
10370
|
var runCustomFilters = function runCustomFilters(all) {
|
10365
10371
|
var cfs = Object.values(customFilters);
|
10366
10372
|
var data = cfs.length ? cfs.reduce(function (acc, filter) {
|
@@ -10369,17 +10375,16 @@ var CollectionContextProvider = function CollectionContextProvider(props) {
|
|
10369
10375
|
return data;
|
10370
10376
|
};
|
10371
10377
|
|
10372
|
-
|
10378
|
+
return Promise.resolve(_catch$1(function () {
|
10373
10379
|
return Promise.resolve(API.all(filters, likes, page)).then(function (response) {
|
10374
10380
|
var next = field ? response[field] : response;
|
10375
10381
|
var data = runCustomFilters(next);
|
10376
|
-
|
10382
|
+
_exit2 = 1;
|
10383
|
+
return data;
|
10377
10384
|
});
|
10378
10385
|
}, function (error) {
|
10379
10386
|
console.log(error);
|
10380
|
-
});
|
10381
|
-
|
10382
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
10387
|
+
}));
|
10383
10388
|
} catch (e) {
|
10384
10389
|
return Promise.reject(e);
|
10385
10390
|
}
|
@@ -10421,7 +10426,19 @@ var CollectionContextProvider = function CollectionContextProvider(props) {
|
|
10421
10426
|
|
10422
10427
|
React.useEffect(function () {
|
10423
10428
|
console.log("CONTEXT LOAD for Filters", filters, customFilters);
|
10424
|
-
|
10429
|
+
var mounted = true;
|
10430
|
+
|
10431
|
+
var callLoad = function callLoad() {
|
10432
|
+
return Promise.resolve(load()).then(function (data) {
|
10433
|
+
if (mounted) setAll(data);
|
10434
|
+
});
|
10435
|
+
};
|
10436
|
+
|
10437
|
+
callLoad();
|
10438
|
+
return function () {
|
10439
|
+
console.log("CONTEXT UNMOUNT", filters, customFilters);
|
10440
|
+
mounted = false;
|
10441
|
+
};
|
10425
10442
|
}, [filters, customFilters]);
|
10426
10443
|
|
10427
10444
|
function clearSelection() {
|
@@ -10958,11 +10975,10 @@ function _catch(body, recover) {
|
|
10958
10975
|
|
10959
10976
|
var TaskContext = React__default["default"].createContext({});
|
10960
10977
|
var TaskContextProvider = function TaskContextProvider(props) {
|
10961
|
-
var removeTask = function removeTask(
|
10978
|
+
var removeTask = function removeTask(task) {
|
10962
10979
|
try {
|
10963
10980
|
return Promise.resolve(_catch(function () {
|
10964
|
-
|
10965
|
-
return Promise.resolve(API.remove(id));
|
10981
|
+
return Promise.resolve(API.remove(task.id));
|
10966
10982
|
}, function (error) {
|
10967
10983
|
console.log("removeTask error", error);
|
10968
10984
|
}));
|
@@ -10971,11 +10987,23 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
10971
10987
|
}
|
10972
10988
|
};
|
10973
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
|
+
|
10974
11002
|
var createTask = function createTask(task, listener) {
|
10975
11003
|
try {
|
10976
11004
|
return Promise.resolve(_catch(function () {
|
10977
11005
|
return Promise.resolve(API.create(task)).then(function (response) {
|
10978
|
-
if (listener) addListener(
|
11006
|
+
if (listener) addListener(taskName, listener);
|
10979
11007
|
return response;
|
10980
11008
|
});
|
10981
11009
|
}, function (error) {
|
@@ -11015,38 +11043,35 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
11015
11043
|
url = _props$url === void 0 ? "/tasks" : _props$url,
|
11016
11044
|
_props$frequency = props.frequency,
|
11017
11045
|
frequency = _props$frequency === void 0 ? 5000 : _props$frequency,
|
11018
|
-
children = props.children
|
11046
|
+
children = props.children,
|
11047
|
+
_props$listeners = props.listeners,
|
11048
|
+
listeners = _props$listeners === void 0 ? {} : _props$listeners;
|
11019
11049
|
var API = CollectionAPI$1(url, host);
|
11020
|
-
var listeners = [];
|
11021
11050
|
|
11022
|
-
|
11023
|
-
|
11024
|
-
|
11025
|
-
|
11026
|
-
listener: listener
|
11027
|
-
});
|
11028
|
-
return listenerId;
|
11051
|
+
var _listeners = Object.assign({}, listeners);
|
11052
|
+
|
11053
|
+
function addListener(taskName, listener) {
|
11054
|
+
_listeners[taskName] = listener;
|
11029
11055
|
}
|
11030
11056
|
|
11031
|
-
function removeListener(
|
11032
|
-
|
11033
|
-
if (listener.taskId === taskId) {
|
11034
|
-
listeners.splice(index, 1);
|
11035
|
-
}
|
11036
|
-
});
|
11057
|
+
function removeListener(taskName) {
|
11058
|
+
delete _listeners[taskName];
|
11037
11059
|
}
|
11038
11060
|
|
11039
11061
|
React.useEffect(function () {
|
11040
11062
|
var interval = setInterval(function () {
|
11041
11063
|
try {
|
11042
11064
|
return Promise.resolve(API.all()).then(function (tasks) {
|
11043
|
-
listeners
|
11044
|
-
|
11045
|
-
|
11046
|
-
|
11047
|
-
|
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);
|
11048
11074
|
});
|
11049
|
-
if (task) listener(task);
|
11050
11075
|
});
|
11051
11076
|
});
|
11052
11077
|
} catch (e) {
|
@@ -11061,6 +11086,7 @@ var TaskContextProvider = function TaskContextProvider(props) {
|
|
11061
11086
|
tasks: tasks,
|
11062
11087
|
task: task,
|
11063
11088
|
createTask: createTask,
|
11089
|
+
updateTask: updateTask,
|
11064
11090
|
removeTask: removeTask,
|
11065
11091
|
addListener: addListener,
|
11066
11092
|
removeListener: removeListener
|
@@ -11121,7 +11147,8 @@ var TaskProgress = function TaskProgress(props) {
|
|
11121
11147
|
var TaskMonitor = function TaskMonitor(props) {
|
11122
11148
|
var remove = function remove(task) {
|
11123
11149
|
try {
|
11124
|
-
|
11150
|
+
console.log("remove", task);
|
11151
|
+
return Promise.resolve(context.removeTask(task)).then(function () {
|
11125
11152
|
refresh();
|
11126
11153
|
});
|
11127
11154
|
} catch (e) {
|
@@ -11141,7 +11168,8 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11141
11168
|
|
11142
11169
|
var _props$title = props.title,
|
11143
11170
|
title = _props$title === void 0 ? "Task Monitor" : _props$title,
|
11144
|
-
filters = props.filters
|
11171
|
+
filters = props.filters,
|
11172
|
+
editors = props.editors;
|
11145
11173
|
var context = React.useContext(TaskContext);
|
11146
11174
|
|
11147
11175
|
var _useState2 = React.useState([]),
|
@@ -11195,16 +11223,16 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11195
11223
|
rows: tasks.map(function (task) {
|
11196
11224
|
return {
|
11197
11225
|
id: task.id,
|
11198
|
-
|
11199
|
-
init: task.init,
|
11200
|
-
end: task.end,
|
11201
|
-
owner: task.owner,
|
11226
|
+
state: task.state,
|
11202
11227
|
description: task.description,
|
11203
|
-
percentage: task.percentage,
|
11204
11228
|
progress: /*#__PURE__*/React__default["default"].createElement(LinearProgress, {
|
11205
11229
|
progress: task.percentage
|
11206
11230
|
}),
|
11207
|
-
|
11231
|
+
percentage: task.percentage,
|
11232
|
+
init: task.init,
|
11233
|
+
end: task.end,
|
11234
|
+
resourceID: task.resourceID,
|
11235
|
+
owner: task.owner,
|
11208
11236
|
actions: /*#__PURE__*/React__default["default"].createElement(Icon, {
|
11209
11237
|
size: "small",
|
11210
11238
|
icon: "cancel",
|
@@ -11212,7 +11240,11 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11212
11240
|
action: function action() {
|
11213
11241
|
return remove(task);
|
11214
11242
|
}
|
11215
|
-
})
|
11243
|
+
}),
|
11244
|
+
info: editors && task.result ? /*#__PURE__*/React__default["default"].createElement(TaskInfo, {
|
11245
|
+
task: task,
|
11246
|
+
editors: editors
|
11247
|
+
}) : null
|
11216
11248
|
};
|
11217
11249
|
})
|
11218
11250
|
};
|
@@ -11223,6 +11255,16 @@ var TaskMonitor = function TaskMonitor(props) {
|
|
11223
11255
|
title: title
|
11224
11256
|
}), /*#__PURE__*/React__default["default"].createElement("main", null, /*#__PURE__*/React__default["default"].createElement(DataTable, table)));
|
11225
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
|
+
};
|
11226
11268
|
|
11227
11269
|
var isFunction = function isFunction(value) {
|
11228
11270
|
return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
|