ywana-core8 0.0.695 → 0.0.696

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 CHANGED
@@ -1,4 +1,5 @@
1
1
  {
2
+ "tasks": [],
2
3
  "references": [
3
4
  {
4
5
  "id": 1,
package/dist/index.cjs CHANGED
@@ -9911,6 +9911,7 @@ var TaskContextProvider = function TaskContextProvider(props) {
9911
9911
  var removeTask = function removeTask(id) {
9912
9912
  try {
9913
9913
  return Promise.resolve(_catch(function () {
9914
+ removeTaskListeners(id);
9914
9915
  return Promise.resolve(API.remove(id));
9915
9916
  }, function (error) {
9916
9917
  console.log("removeTask error", error);
@@ -9920,10 +9921,13 @@ var TaskContextProvider = function TaskContextProvider(props) {
9920
9921
  }
9921
9922
  };
9922
9923
 
9923
- var createTask = function createTask(task) {
9924
+ var createTask = function createTask(task, listener) {
9924
9925
  try {
9925
9926
  return Promise.resolve(_catch(function () {
9926
- return Promise.resolve(API.create(task));
9927
+ return Promise.resolve(API.create(task)).then(function (response) {
9928
+ if (listener) addListener(response.id, listener);
9929
+ return response;
9930
+ });
9927
9931
  }, function (error) {
9928
9932
  console.log("createTask error", error);
9929
9933
  }));
@@ -9959,13 +9963,58 @@ var TaskContextProvider = function TaskContextProvider(props) {
9959
9963
  var host = props.host,
9960
9964
  _props$url = props.url,
9961
9965
  url = _props$url === void 0 ? "/tasks" : _props$url,
9966
+ _props$frequency = props.frequency,
9967
+ frequency = _props$frequency === void 0 ? 5000 : _props$frequency,
9962
9968
  children = props.children;
9963
9969
  var API = CollectionAPI(url, host);
9970
+
9971
+ var _useState = React.useState([]),
9972
+ listeners = _useState[0],
9973
+ setListeners = _useState[1];
9974
+
9975
+ function addListener(taskId, listener) {
9976
+ var listenerId = listeners.length;
9977
+ listeners.push({
9978
+ taskId: taskId,
9979
+ listener: listener
9980
+ });
9981
+ return listenerId;
9982
+ }
9983
+
9984
+ function removeTaskListeners(taskId) {
9985
+ var newListeners = listeners.filter(function (listener) {
9986
+ return listener.taskId !== taskId;
9987
+ });
9988
+ setListeners(newListeners);
9989
+ }
9990
+
9991
+ React.useEffect(function () {
9992
+ var interval = setInterval(function () {
9993
+ try {
9994
+ return Promise.resolve(API.all()).then(function (tasks) {
9995
+ listeners.forEach(function (_ref) {
9996
+ var taskId = _ref.taskId,
9997
+ listener = _ref.listener;
9998
+ var task = tasks.find(function (task) {
9999
+ return task.id === taskId;
10000
+ });
10001
+ if (task) listener(task);
10002
+ });
10003
+ });
10004
+ } catch (e) {
10005
+ return Promise.reject(e);
10006
+ }
10007
+ }, frequency);
10008
+ return function () {
10009
+ return clearInterval(interval);
10010
+ };
10011
+ }, []);
9964
10012
  var value = {
9965
10013
  tasks: tasks,
9966
10014
  task: task,
9967
10015
  createTask: createTask,
9968
- removeTask: removeTask
10016
+ removeTask: removeTask,
10017
+ addListener: addListener
9969
10018
  };
9970
10019
  return /*#__PURE__*/React__default["default"].createElement(TaskContext.Provider, {
9971
10020
  value: value
@@ -9998,9 +10047,9 @@ var TaskProgress = function TaskProgress(props) {
9998
10047
  autoreload = _props$autoreload === void 0 ? true : _props$autoreload,
9999
10048
  onComplete = props.onComplete;
10000
10049
 
10001
- var _useState = React.useState(0),
10002
- progress = _useState[0],
10003
- setProgress = _useState[1];
10050
+ var _useState2 = React.useState(0),
10051
+ progress = _useState2[0],
10052
+ setProgress = _useState2[1];
10004
10053
 
10005
10054
  React.useEffect(function () {
10006
10055
  if (autoreload) {
@@ -10046,10 +10095,10 @@ var TaskMonitor = function TaskMonitor(props) {
10046
10095
  filters = props.filters;
10047
10096
  var context = React.useContext(TaskContext);
10048
10097
 
10049
- var _useState2 = React.useState([]),
10050
- _useState2$ = _useState2[0],
10051
- tasks = _useState2$ === void 0 ? [] : _useState2$,
10052
- setTasks = _useState2[1];
10098
+ var _useState3 = React.useState([]),
10099
+ _useState3$ = _useState3[0],
10100
+ tasks = _useState3$ === void 0 ? [] : _useState3$,
10101
+ setTasks = _useState3[1];
10053
10102
 
10054
10103
  React.useEffect(function () {
10055
10104
  refresh();
@@ -10076,10 +10125,14 @@ var TaskMonitor = function TaskMonitor(props) {
10076
10125
  label: ""
10077
10126
  }, {
10078
10127
  id: "init",
10079
- label: "Inicio"
10128
+ label: "Inicio",
10129
+ type: TYPES.STRING,
10130
+ format: FORMATS.DATE
10080
10131
  }, {
10081
10132
  id: "end",
10082
- label: "Fin"
10133
+ label: "Fin",
10134
+ type: TYPES.STRING,
10135
+ format: FORMATS.DATE
10083
10136
  }, {
10084
10137
  id: "resourceID",
10085
10138
  label: "Recurso"