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 CHANGED
@@ -1,24 +1,12 @@
1
1
  {
2
2
  "tasks": [
3
3
  {
4
- "description": "Test Task 1666280018467",
5
- "init": "Thu Oct 20 2022 17:33:38 GMT+0200 (hora de verano de Europa central)",
6
- "id": 1
7
- },
8
- {
9
- "description": "Test Task 1666280114789",
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
- }, label, actions ? actions : null);
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
- var _temp4 = _catch$1(function () {
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
- setAll(data);
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
- load();
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(id) {
10978
+ var removeTask = function removeTask(task) {
10962
10979
  try {
10963
10980
  return Promise.resolve(_catch(function () {
10964
- removeListener(id);
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(response.id, listener);
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
- function addListener(taskId, listener) {
11023
- var listenerId = listeners.length;
11024
- listeners.push({
11025
- taskId: taskId,
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(taskId) {
11032
- listeners.forEach(function (listener, index) {
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.forEach(function (_ref) {
11044
- var taskId = _ref.taskId,
11045
- listener = _ref.listener;
11046
- var task = tasks.find(function (task) {
11047
- return task.id === taskId;
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
- return Promise.resolve(context.removeTask(task.id)).then(function () {
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
- resourceID: task.resourceID,
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
- state: task.state,
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);