@webkrafters/react-eagleeye 1.1.0-alpha.5 → 1.1.0-alpha.7

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.
@@ -123,7 +123,6 @@ var ObservableContext = exports.ObservableContext = /*#__PURE__*/function (_Abst
123
123
  get: function get() {
124
124
  var stream = this.stream;
125
125
  return function (selectorMap) {
126
- var strictMode = (0, _react.useRef)(true);
127
126
  var _useState = (0, _react.useState)(function () {
128
127
  return stream(selectorMap);
129
128
  }),
@@ -139,20 +138,15 @@ var ObservableContext = exports.ObservableContext = /*#__PURE__*/function (_Abst
139
138
  channel.selectorMap = selectorMap;
140
139
  }, [selectorMap]);
141
140
  (0, _react.useEffect)(function () {
142
- if (!strictMode.current) {
143
- return;
144
- }
145
141
  channel.addListener('data-changed', function () {
146
142
  return setStore(_objectSpread(_objectSpread({}, store), {}, {
147
143
  data: channel.data
148
144
  }));
149
145
  });
150
- strictMode.current = false;
151
146
  return function () {
152
- channel.endStream();
153
- strictMode.current = true;
147
+ return channel.endStream();
154
148
  };
155
- }, []);
149
+ }, [channel]);
156
150
  return store;
157
151
  };
158
152
  }
@@ -33,7 +33,6 @@ export type WithChildren<P extends IProviderProps<TemplateType<P>>> = P & {
33
33
  export interface ChannelEntry {
34
34
  channel: WeakRef<Channel>;
35
35
  numConnections: number;
36
- useStore: () => Store;
37
36
  }
38
37
  export interface Entry {
39
38
  channels: ChsResource<Channel>;
@@ -56,7 +55,6 @@ declare class ChsResource<W extends Channel> implements IResource<W> {
56
55
  readonly isValid: boolean;
57
56
  readonly resource: W;
58
57
  readonly size: number;
59
- readonly useStore: () => Store;
60
58
  dec: () => void;
61
59
  inc(): void;
62
60
  };
@@ -65,7 +63,6 @@ declare class ChsResource<W extends Channel> implements IResource<W> {
65
63
  readonly isValid: boolean;
66
64
  readonly resource: W;
67
65
  readonly size: number;
68
- readonly useStore: () => Store;
69
66
  dec: () => void;
70
67
  inc(): void;
71
68
  };
@@ -83,7 +80,6 @@ declare class ObsResource<W extends AbstractObservable<TemplateType2<W>>> implem
83
80
  readonly isValid: boolean;
84
81
  readonly resource: W_1;
85
82
  readonly size: number;
86
- readonly useStore: () => Store;
87
83
  dec: () => void;
88
84
  inc(): void;
89
85
  };
@@ -92,7 +88,6 @@ declare class ObsResource<W extends AbstractObservable<TemplateType2<W>>> implem
92
88
  readonly isValid: boolean;
93
89
  readonly resource: W_1;
94
90
  readonly size: number;
95
- readonly useStore: () => Store;
96
91
  dec: () => void;
97
92
  inc(): void;
98
93
  };
@@ -105,7 +100,6 @@ declare class ObsResource<W extends AbstractObservable<TemplateType2<W>>> implem
105
100
  readonly isValid: boolean;
106
101
  readonly resource: W_1;
107
102
  readonly size: number;
108
- readonly useStore: () => Store;
109
103
  dec: () => void;
110
104
  inc(): void;
111
105
  };
@@ -114,7 +108,6 @@ declare class ObsResource<W extends AbstractObservable<TemplateType2<W>>> implem
114
108
  readonly isValid: boolean;
115
109
  readonly resource: W_1;
116
110
  readonly size: number;
117
- readonly useStore: () => Store;
118
111
  dec: () => void;
119
112
  inc(): void;
120
113
  };
@@ -13,6 +13,14 @@ var _ = require("..");
13
13
  var _2 = require("../../");
14
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
15
15
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
16
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
17
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
19
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
20
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
21
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
24
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
17
25
  function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
18
26
  function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
@@ -20,14 +28,6 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
20
28
  function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
21
29
  function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
22
30
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
23
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
26
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
28
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
29
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
31
31
  function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
32
32
  function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
33
33
  function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
@@ -46,30 +46,9 @@ var ChsResource = /*#__PURE__*/function () {
46
46
  return _createClass(ChsResource, [{
47
47
  key: "acquire",
48
48
  value: function acquire(sMapHash, resource) {
49
- var useStore = function useStore() {
50
- var _useState = (0, _react.useState)(function () {
51
- return (0, _.makeStore)(resource);
52
- }),
53
- _useState2 = _slicedToArray(_useState, 2),
54
- store = _useState2[0],
55
- setStore = _useState2[1];
56
- (0, _react.useEffect)(function () {
57
- var fn = function fn() {
58
- return setStore(_objectSpread(_objectSpread({}, store), {}, {
59
- data: resource.data
60
- }));
61
- };
62
- resource.addListener('data-changed', fn);
63
- return function () {
64
- return resource.removeListener('data-changed', fn);
65
- };
66
- }, [resource]);
67
- return store;
68
- };
69
49
  this._registry[sMapHash] = {
70
50
  channel: new WeakRef(resource),
71
- numConnections: 0,
72
- useStore: useStore
51
+ numConnections: 0
73
52
  };
74
53
  this._finalizer.register(resource, sMapHash, resource);
75
54
  return this.createHandleFor(sMapHash);
@@ -93,9 +72,6 @@ var ChsResource = /*#__PURE__*/function () {
93
72
  get size() {
94
73
  return handle.isValid ? entry.numConnections : -1;
95
74
  },
96
- get useStore() {
97
- return entry.useStore;
98
- },
99
75
  dec: function dec() {
100
76
  if (!handle.isValid) {
101
77
  return;
@@ -303,14 +279,17 @@ var EagleEyeUniversal = exports.EagleEyeUniversal = /*#__PURE__*/function () {
303
279
  value: function defineStreamHook() {
304
280
  var _this4 = this;
305
281
  return function (selectorMap) {
306
- var _useState3 = (0, _react.useState)(function () {
282
+ var _useState = (0, _react.useState)(function () {
307
283
  return _this4._util.hashSelectorMap(selectorMap);
308
284
  }),
309
- _useState4 = _slicedToArray(_useState3, 2),
310
- sMapHash = _useState4[0],
311
- updateSMapHash = _useState4[1];
285
+ _useState2 = _slicedToArray(_useState, 2),
286
+ sMapHash = _useState2[0],
287
+ updateSMapHash = _useState2[1];
288
+ (0, _react.useEffect)(function () {
289
+ return updateSMapHash(_this4._util.hashSelectorMap(selectorMap));
290
+ }, [selectorMap]);
312
291
  var targetId = (0, _react.use)(_this4._context);
313
- var getStoreHook = (0, _react.useCallback)(function () {
292
+ var channel = (0, _react.useMemo)(function () {
314
293
  var ctxHandle = _this4._obs.createHandleFor(targetId);
315
294
  var streamHandle = ctxHandle.getChannelHandleAt(sMapHash);
316
295
  if (!streamHandle.isValid) {
@@ -318,19 +297,26 @@ var EagleEyeUniversal = exports.EagleEyeUniversal = /*#__PURE__*/function () {
318
297
  streamHandle = ctxHandle.getChannelHandleAt(sMapHash);
319
298
  }
320
299
  streamHandle.inc();
321
- return streamHandle.useStore;
322
- }, [sMapHash, selectorMap, targetId]);
323
- var _useState5 = (0, _react.useState)(getStoreHook),
324
- _useState6 = _slicedToArray(_useState5, 2),
325
- useStore = _useState6[0],
326
- updateStoreHook = _useState6[1];
327
- (0, _react.useEffect)(function () {
328
- return updateSMapHash(_this4._util.hashSelectorMap(selectorMap));
329
- }, [selectorMap]);
300
+ return streamHandle.resource;
301
+ }, [sMapHash, targetId]);
302
+ var _useState3 = (0, _react.useState)(function () {
303
+ return (0, _.makeStore)(channel);
304
+ }),
305
+ _useState4 = _slicedToArray(_useState3, 2),
306
+ store = _useState4[0],
307
+ setStore = _useState4[1];
330
308
  (0, _react.useEffect)(function () {
331
- return updateStoreHook(getStoreHook());
332
- }, [sMapHash]);
333
- return useStore();
309
+ var fn = function fn() {
310
+ return setStore(_objectSpread(_objectSpread({}, store), {}, {
311
+ data: channel.data
312
+ }));
313
+ };
314
+ channel.addListener('data-changed', fn);
315
+ return function () {
316
+ return channel.removeListener('data-changed', fn);
317
+ };
318
+ }, [channel]);
319
+ return store;
334
320
  };
335
321
  }
336
322
  }]);
package/package.json CHANGED
@@ -125,7 +125,7 @@
125
125
  "test:watch": "eslint --fix && jest --updateSnapshot --watchAll"
126
126
  },
127
127
  "types": "dist/index.d.ts",
128
- "version": "1.1.0-alpha.5",
128
+ "version": "1.1.0-alpha.7",
129
129
  "dependencies": {
130
130
  "@webkrafters/eagleeye": "^1.0.8",
131
131
  "js-sha512": "^0.9.0",