ywana-core8 0.0.989 → 0.0.990

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/index.umd.js CHANGED
@@ -5344,6 +5344,20 @@
5344
5344
  * Task Context
5345
5345
  */
5346
5346
 
5347
+ function _catch$5(body, recover) {
5348
+ try {
5349
+ var result = body();
5350
+ } catch (e) {
5351
+ return recover(e);
5352
+ }
5353
+ if (result && result.then) {
5354
+ return result.then(void 0, recover);
5355
+ }
5356
+ return result;
5357
+ } /**
5358
+ * Task Provider
5359
+ */
5360
+
5347
5361
  function _settle(pact, state, value) {
5348
5362
  if (!pact.s) {
5349
5363
  if (value instanceof _Pact) {
@@ -5363,14 +5377,12 @@
5363
5377
  }
5364
5378
  pact.s = state;
5365
5379
  pact.v = value;
5366
- const observer = pact.o;
5380
+ var observer = pact.o;
5367
5381
  if (observer) {
5368
5382
  observer(pact);
5369
5383
  }
5370
5384
  }
5371
- } /**
5372
- * Task Provider
5373
- */
5385
+ }
5374
5386
  var _Pact = /*#__PURE__*/function () {
5375
5387
  function _Pact() {}
5376
5388
  _Pact.prototype.then = function (onFulfilled, onRejected) {
@@ -5439,17 +5451,6 @@
5439
5451
  _cycle();
5440
5452
  return pact;
5441
5453
  }
5442
- function _catch$5(body, recover) {
5443
- try {
5444
- var result = body();
5445
- } catch (e) {
5446
- return recover(e);
5447
- }
5448
- if (result && result.then) {
5449
- return result.then(void 0, recover);
5450
- }
5451
- return result;
5452
- }
5453
5454
  var TaskContext = React__default["default"].createContext({});
5454
5455
  var TaskContextProvider = function TaskContextProvider(props) {
5455
5456
  var removeTask = function removeTask(task) {
@@ -5510,34 +5511,41 @@
5510
5511
  return Promise.reject(e);
5511
5512
  }
5512
5513
  };
5514
+ var executeListeners = function executeListeners() {
5515
+ try {
5516
+ var taskIDs = Object.keys(listeners);
5517
+ var _temp = _forTo(taskIDs, function (i) {
5518
+ var taskID = taskIDs[i];
5519
+ return Promise.resolve(task(taskID)).then(function (tsk) {
5520
+ var listener = listeners[taskID];
5521
+ if (listener) listener(tsk, appContextRef.current);
5522
+ });
5523
+ });
5524
+ return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
5525
+ } catch (e) {
5526
+ return Promise.reject(e);
5527
+ }
5528
+ };
5513
5529
  var host = props.host,
5514
5530
  _props$url = props.url,
5515
5531
  url = _props$url === void 0 ? "/tasks" : _props$url,
5516
5532
  _props$frequency = props.frequency,
5517
5533
  frequency = _props$frequency === void 0 ? 1000 : _props$frequency,
5518
- children = props.children,
5519
- ctx = props.ctx;
5534
+ children = props.children;
5520
5535
  var API = CollectionAPI$1(url, host, "");
5521
5536
  var _useState = React.useState({}),
5522
5537
  listeners = _useState[0],
5523
5538
  setListeners = _useState[1];
5524
- var appContext = React.useContext(ctx);
5539
+ var appContext = React.useContext(appContext);
5540
+ var appContextRef = useRef(appContext);
5541
+ React.useEffect(function () {
5542
+ appContextRef.current = appContext;
5543
+ }, [appContext]);
5525
5544
  React.useEffect(function () {
5526
5545
  if (Object.keys(listeners).length === 0) return;
5527
5546
  var _interval = setInterval(function () {
5528
- try {
5529
- var taskIDs = Object.keys(listeners);
5530
- var _temp = _forTo(taskIDs, function (i) {
5531
- var taskID = taskIDs[i];
5532
- return Promise.resolve(task(taskID)).then(function (tsk) {
5533
- var listener = listeners[taskID];
5534
- if (listener) listener(tsk, appContext);
5535
- });
5536
- });
5537
- return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
5538
- } catch (e) {
5539
- return Promise.reject(e);
5540
- }
5547
+ executeListeners();
5548
+ return Promise.resolve();
5541
5549
  }, frequency);
5542
5550
  return function () {
5543
5551
  return clearInterval(_interval);