@legendapp/state 0.17.0-next.6 → 0.17.0-next.8

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/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { isObservable, mergeIntoObservable } from './src/helpers';
2
- export { observable } from './src/observable';
2
+ export { observable, observablePrimitive } from './src/observable';
3
3
  export { batch, beginBatch, endBatch } from './src/batching';
4
4
  export { computed } from './src/computed';
5
5
  export { event } from './src/event';
package/index.js CHANGED
@@ -2,40 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- /** @internal */
6
- function isArray(obj) {
7
- return Array.isArray(obj);
8
- }
9
- /** @internal */
10
- function isString(obj) {
11
- return typeof obj === 'string';
12
- }
13
- /** @internal */
14
- function isObject(obj) {
15
- return obj && typeof obj === 'object' && !isArray(obj);
16
- }
17
- /** @internal */
18
- function isFunction(obj) {
19
- return typeof obj === 'function';
20
- }
21
- /** @internal */
22
- function isPrimitive(arg) {
23
- var type = typeof arg;
24
- return arg !== undefined && arg !== null && type != 'object' && type != 'function';
25
- }
26
- function isEmpty(obj) {
27
- return obj && Object.keys(obj).length === 0;
28
- }
29
- const mapPrimitives = new Map([
30
- ['boolean', true],
31
- ['string', true],
32
- ['number', true],
33
- ]);
34
- /** @internal */
35
- function isActualPrimitive(arg) {
36
- return mapPrimitives.has(typeof arg);
37
- }
38
-
39
5
  const tracking = {
40
6
  isTracking: 0,
41
7
  nodes: undefined,
@@ -90,15 +56,43 @@ function untrack(node) {
90
56
  }
91
57
  }
92
58
  }
93
- function checkTracking(node, track) {
94
- if (tracking.isTracking) {
95
- if (track) {
96
- updateTracking(node, track);
97
- }
98
- else {
99
- untrack(node);
100
- }
101
- }
59
+
60
+ /** @internal */
61
+ function isArray(obj) {
62
+ return Array.isArray(obj);
63
+ }
64
+ /** @internal */
65
+ function isString(obj) {
66
+ return typeof obj === 'string';
67
+ }
68
+ /** @internal */
69
+ function isObject(obj) {
70
+ return obj && typeof obj === 'object' && !isArray(obj);
71
+ }
72
+ /** @internal */
73
+ function isFunction(obj) {
74
+ return typeof obj === 'function';
75
+ }
76
+ /** @internal */
77
+ function isPrimitive(arg) {
78
+ var type = typeof arg;
79
+ return arg !== undefined && arg !== null && type != 'object' && type != 'function';
80
+ }
81
+ /** @internal */
82
+ function isObjectEmpty(obj) {
83
+ return obj && typeof obj === 'object' && Object.keys(obj).length === 0;
84
+ }
85
+ function isEmpty(obj) {
86
+ return obj && Object.keys(obj).length === 0;
87
+ }
88
+ const mapPrimitives = new Map([
89
+ ['boolean', true],
90
+ ['string', true],
91
+ ['number', true],
92
+ ]);
93
+ /** @internal */
94
+ function isActualPrimitive(arg) {
95
+ return mapPrimitives.has(typeof arg);
102
96
  }
103
97
 
104
98
  const symbolDateModified = Symbol('dateModified');
@@ -108,12 +102,17 @@ const symbolUndef = Symbol('undef');
108
102
  const extraPrimitiveProps = new Map();
109
103
  const nextNodeID = { current: 0 };
110
104
  function get(node, track) {
111
- // Track by default
112
- checkTracking(node, track === undefined ? true : track === false ? undefined : track);
113
- const value = getNodeValue(node);
114
- return value;
105
+ if (track !== false) {
106
+ // Track by default
107
+ updateTracking(node, track);
108
+ }
109
+ return peek(node);
115
110
  }
116
111
  function peek(node) {
112
+ if (node.activate) {
113
+ node.activate();
114
+ node.activate = undefined;
115
+ }
117
116
  return getNodeValue(node);
118
117
  }
119
118
  function getNodeValue(node) {
@@ -342,11 +341,24 @@ class ObservablePrimitiveClass {
342
341
  __classPrivateFieldSet(this, _ObservablePrimitiveClass_node, node, "f");
343
342
  this.set = this.set.bind(this);
344
343
  }
344
+ // Getters
345
345
  get value() {
346
346
  const node = __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f");
347
347
  updateTracking(node);
348
- return node.root._;
348
+ return this.peek();
349
+ }
350
+ peek() {
351
+ const node = __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f");
352
+ if (node.activate) {
353
+ node.activate();
354
+ node.activate = undefined;
355
+ }
356
+ return __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
357
+ }
358
+ get(track) {
359
+ return track !== false ? this.value : this.peek();
349
360
  }
361
+ // Setters
350
362
  set value(value) {
351
363
  if (__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root.locked) {
352
364
  throw new Error(process.env.NODE_ENV === 'development'
@@ -358,12 +370,6 @@ class ObservablePrimitiveClass {
358
370
  root._ = value;
359
371
  doNotify(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f"), value, [], value, prev, 0);
360
372
  }
361
- peek() {
362
- return __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
363
- }
364
- get(track) {
365
- return track !== false ? this.value : __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
366
- }
367
373
  set(value) {
368
374
  if (isFunction(value)) {
369
375
  value = value(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._);
@@ -371,6 +377,7 @@ class ObservablePrimitiveClass {
371
377
  this.value = value;
372
378
  return this;
373
379
  }
380
+ // Listener
374
381
  onChange(cb, track, noArgs) {
375
382
  return onChange(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f"), cb, track, noArgs);
376
383
  }
@@ -412,7 +419,7 @@ function mergeIntoObservable(target, ...sources) {
412
419
  }
413
420
  const value = ((_b = (_a = target).peek) === null || _b === void 0 ? void 0 : _b.call(_a)) || target;
414
421
  for (const key in source) {
415
- if (isObject(source[key])) {
422
+ if (isObject(source[key] && !isObjectEmpty(source[key]))) {
416
423
  if (!needsSet && (!value[key] || !isObject(value[key]))) {
417
424
  target[key] = {};
418
425
  }
@@ -607,8 +614,16 @@ const proxyHandler = {
607
614
  };
608
615
  }
609
616
  let value = getNodeValue(node);
610
- if (isPrimitive(value) && p === 'value') {
611
- updateTracking(node);
617
+ if (isPrimitive(value)) {
618
+ if (p === 'value') {
619
+ return get(node);
620
+ }
621
+ else if (extraPrimitiveProps.size) {
622
+ const vPrim = extraPrimitiveProps.get(p);
623
+ if (vPrim !== undefined) {
624
+ return (_b = (_a = vPrim === null || vPrim === void 0 ? void 0 : vPrim.__fn) === null || _a === void 0 ? void 0 : _a.call(vPrim, node)) !== null && _b !== void 0 ? _b : vPrim;
625
+ }
626
+ }
612
627
  return value;
613
628
  }
614
629
  const vProp = value === null || value === void 0 ? void 0 : value[p];
@@ -636,12 +651,6 @@ const proxyHandler = {
636
651
  }
637
652
  // Accessing primitive returns the raw value
638
653
  if (isPrimitive(vProp)) {
639
- if (extraPrimitiveProps.size) {
640
- const vPrim = extraPrimitiveProps.get(p);
641
- if (vPrim !== undefined) {
642
- return (_b = (_a = vPrim === null || vPrim === void 0 ? void 0 : vPrim.__fn) === null || _a === void 0 ? void 0 : _a.call(vPrim, node)) !== null && _b !== void 0 ? _b : vPrim;
643
- }
644
- }
645
654
  // Update that this primitive node was accessed for observers
646
655
  if (isArray(value) && p === 'length') {
647
656
  updateTracking(node, true);
@@ -682,15 +691,8 @@ const proxyHandler = {
682
691
  if (inSet) {
683
692
  return Reflect.set(node, prop, value);
684
693
  }
685
- if (!inAssign && node.root.safeMode) {
686
- // Don't allow in safe mode
687
- if (node.root.safeMode === 2)
688
- return false;
689
- // Don't allow set on objects in default mode
690
- const existing = getNodeValue(getChildNode(node, prop));
691
- if (isObject(existing) || isArray(existing) || isObject(value) || isArray(value)) {
692
- return false;
693
- }
694
+ if (!inAssign && prop !== 'value') {
695
+ return false;
694
696
  }
695
697
  setKey(node, prop, value);
696
698
  return true;
@@ -698,18 +700,11 @@ const proxyHandler = {
698
700
  deleteProperty(target, prop) {
699
701
  // If this delete comes from within an observable function it's allowed
700
702
  if (inSet) {
701
- Reflect.deleteProperty(target, prop);
702
- }
703
- else if (target.root.safeMode) {
704
- return false;
703
+ return Reflect.deleteProperty(target, prop);
705
704
  }
706
705
  else {
707
- if (process.env.NODE_ENV === 'development' && tracking.isTracking) {
708
- console.error(`[legend-state] Should not delete an observable property within an observer. You may have done this by accident. Please use delete() if you really want to do this.`);
709
- }
710
- deleteFn(target, prop);
706
+ return false;
711
707
  }
712
- return true;
713
708
  },
714
709
  has(target, prop) {
715
710
  const value = getNodeValue(target);
@@ -813,34 +808,36 @@ function deleteFn(node, key) {
813
808
  // delete sets to undefined first to notify
814
809
  setKey(node, key, symbolUndef, /*level*/ -1);
815
810
  }
816
- function observable(value, safe) {
811
+ function createObservable(value, makePrimitive) {
817
812
  const promise = (value === null || value === void 0 ? void 0 : value.then) && value;
818
813
  if (promise) {
819
814
  value = undefined;
820
815
  }
821
- const obs = {
816
+ const root = {
822
817
  _: promise ? undefined : value,
823
- safeMode: safe === true ? 2 : safe === false ? 0 : 1,
824
818
  };
825
819
  const node = {
826
820
  id: nextNodeID.current++,
827
- root: obs,
821
+ root,
828
822
  };
829
- if (isActualPrimitive(value)) {
830
- return new ObservablePrimitiveClass(node);
831
- }
832
- else {
833
- const proxy = getProxy(node);
834
- if (promise) {
835
- promise.catch((error) => {
836
- proxy.set({ error });
837
- });
838
- promise.then((value) => {
839
- proxy.set(value);
840
- });
841
- }
842
- return proxy;
823
+ const obs = makePrimitive || isActualPrimitive(value)
824
+ ? new ObservablePrimitiveClass(node)
825
+ : getProxy(node);
826
+ if (promise) {
827
+ promise.catch((error) => {
828
+ obs.set({ error });
829
+ });
830
+ promise.then((value) => {
831
+ obs.set(value);
832
+ });
843
833
  }
834
+ return obs;
835
+ }
836
+ function observable(value) {
837
+ return createObservable(value);
838
+ }
839
+ function observablePrimitive(value) {
840
+ return createObservable(value, /*makePrimitive*/ true);
844
841
  }
845
842
 
846
843
  function setupTracking(nodes, update, noArgs) {
@@ -898,23 +895,22 @@ function observe(run) {
898
895
  }
899
896
 
900
897
  function computed(compute) {
901
- // Create an observable for this computed variable set to the initial value
902
- let obs;
903
- const fn = function () {
904
- const val = compute();
905
- if (obs) {
906
- // Update the computed value
907
- lockObservable(obs, false);
908
- obs.set(val);
909
- lockObservable(obs, true);
910
- }
911
- else {
912
- // Create the observable on the first run
913
- obs = observable(val);
914
- lockObservable(obs, true);
915
- }
898
+ // Create an observable primitive for this computed variable
899
+ let obs = observable();
900
+ lockObservable(obs, true);
901
+ // Lazily activate the observable when get is called
902
+ getNode(obs).activate = () => {
903
+ const fn = function () {
904
+ const val = compute();
905
+ if (obs) {
906
+ // Update the computed value
907
+ lockObservable(obs, false);
908
+ obs.set(val);
909
+ lockObservable(obs, true);
910
+ }
911
+ };
912
+ observe(fn);
916
913
  };
917
- observe(fn);
918
914
  return obs;
919
915
  }
920
916
 
@@ -987,6 +983,7 @@ exports.isPrimitive = isPrimitive;
987
983
  exports.lockObservable = lockObservable;
988
984
  exports.mergeIntoObservable = mergeIntoObservable;
989
985
  exports.observable = observable;
986
+ exports.observablePrimitive = observablePrimitive;
990
987
  exports.observe = observe;
991
988
  exports.onChange = onChange;
992
989
  exports.setupTracking = setupTracking;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/is.ts","../../src/tracking.ts","../../src/globals.ts","../node_modules/tslib/tslib.es6.js","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/helpers.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/tracking.ts","../../src/is.ts","../../src/globals.ts","../node_modules/tslib/tslib.es6.js","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/helpers.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
package/index.mjs CHANGED
@@ -1,37 +1,3 @@
1
- /** @internal */
2
- function isArray(obj) {
3
- return Array.isArray(obj);
4
- }
5
- /** @internal */
6
- function isString(obj) {
7
- return typeof obj === 'string';
8
- }
9
- /** @internal */
10
- function isObject(obj) {
11
- return obj && typeof obj === 'object' && !isArray(obj);
12
- }
13
- /** @internal */
14
- function isFunction(obj) {
15
- return typeof obj === 'function';
16
- }
17
- /** @internal */
18
- function isPrimitive(arg) {
19
- var type = typeof arg;
20
- return arg !== undefined && arg !== null && type != 'object' && type != 'function';
21
- }
22
- function isEmpty(obj) {
23
- return obj && Object.keys(obj).length === 0;
24
- }
25
- const mapPrimitives = new Map([
26
- ['boolean', true],
27
- ['string', true],
28
- ['number', true],
29
- ]);
30
- /** @internal */
31
- function isActualPrimitive(arg) {
32
- return mapPrimitives.has(typeof arg);
33
- }
34
-
35
1
  const tracking = {
36
2
  isTracking: 0,
37
3
  nodes: undefined,
@@ -86,15 +52,43 @@ function untrack(node) {
86
52
  }
87
53
  }
88
54
  }
89
- function checkTracking(node, track) {
90
- if (tracking.isTracking) {
91
- if (track) {
92
- updateTracking(node, track);
93
- }
94
- else {
95
- untrack(node);
96
- }
97
- }
55
+
56
+ /** @internal */
57
+ function isArray(obj) {
58
+ return Array.isArray(obj);
59
+ }
60
+ /** @internal */
61
+ function isString(obj) {
62
+ return typeof obj === 'string';
63
+ }
64
+ /** @internal */
65
+ function isObject(obj) {
66
+ return obj && typeof obj === 'object' && !isArray(obj);
67
+ }
68
+ /** @internal */
69
+ function isFunction(obj) {
70
+ return typeof obj === 'function';
71
+ }
72
+ /** @internal */
73
+ function isPrimitive(arg) {
74
+ var type = typeof arg;
75
+ return arg !== undefined && arg !== null && type != 'object' && type != 'function';
76
+ }
77
+ /** @internal */
78
+ function isObjectEmpty(obj) {
79
+ return obj && typeof obj === 'object' && Object.keys(obj).length === 0;
80
+ }
81
+ function isEmpty(obj) {
82
+ return obj && Object.keys(obj).length === 0;
83
+ }
84
+ const mapPrimitives = new Map([
85
+ ['boolean', true],
86
+ ['string', true],
87
+ ['number', true],
88
+ ]);
89
+ /** @internal */
90
+ function isActualPrimitive(arg) {
91
+ return mapPrimitives.has(typeof arg);
98
92
  }
99
93
 
100
94
  const symbolDateModified = Symbol('dateModified');
@@ -104,12 +98,17 @@ const symbolUndef = Symbol('undef');
104
98
  const extraPrimitiveProps = new Map();
105
99
  const nextNodeID = { current: 0 };
106
100
  function get(node, track) {
107
- // Track by default
108
- checkTracking(node, track === undefined ? true : track === false ? undefined : track);
109
- const value = getNodeValue(node);
110
- return value;
101
+ if (track !== false) {
102
+ // Track by default
103
+ updateTracking(node, track);
104
+ }
105
+ return peek(node);
111
106
  }
112
107
  function peek(node) {
108
+ if (node.activate) {
109
+ node.activate();
110
+ node.activate = undefined;
111
+ }
113
112
  return getNodeValue(node);
114
113
  }
115
114
  function getNodeValue(node) {
@@ -338,11 +337,24 @@ class ObservablePrimitiveClass {
338
337
  __classPrivateFieldSet(this, _ObservablePrimitiveClass_node, node, "f");
339
338
  this.set = this.set.bind(this);
340
339
  }
340
+ // Getters
341
341
  get value() {
342
342
  const node = __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f");
343
343
  updateTracking(node);
344
- return node.root._;
344
+ return this.peek();
345
+ }
346
+ peek() {
347
+ const node = __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f");
348
+ if (node.activate) {
349
+ node.activate();
350
+ node.activate = undefined;
351
+ }
352
+ return __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
353
+ }
354
+ get(track) {
355
+ return track !== false ? this.value : this.peek();
345
356
  }
357
+ // Setters
346
358
  set value(value) {
347
359
  if (__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root.locked) {
348
360
  throw new Error(process.env.NODE_ENV === 'development'
@@ -354,12 +366,6 @@ class ObservablePrimitiveClass {
354
366
  root._ = value;
355
367
  doNotify(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f"), value, [], value, prev, 0);
356
368
  }
357
- peek() {
358
- return __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
359
- }
360
- get(track) {
361
- return track !== false ? this.value : __classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._;
362
- }
363
369
  set(value) {
364
370
  if (isFunction(value)) {
365
371
  value = value(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f").root._);
@@ -367,6 +373,7 @@ class ObservablePrimitiveClass {
367
373
  this.value = value;
368
374
  return this;
369
375
  }
376
+ // Listener
370
377
  onChange(cb, track, noArgs) {
371
378
  return onChange(__classPrivateFieldGet(this, _ObservablePrimitiveClass_node, "f"), cb, track, noArgs);
372
379
  }
@@ -408,7 +415,7 @@ function mergeIntoObservable(target, ...sources) {
408
415
  }
409
416
  const value = ((_b = (_a = target).peek) === null || _b === void 0 ? void 0 : _b.call(_a)) || target;
410
417
  for (const key in source) {
411
- if (isObject(source[key])) {
418
+ if (isObject(source[key] && !isObjectEmpty(source[key]))) {
412
419
  if (!needsSet && (!value[key] || !isObject(value[key]))) {
413
420
  target[key] = {};
414
421
  }
@@ -603,8 +610,16 @@ const proxyHandler = {
603
610
  };
604
611
  }
605
612
  let value = getNodeValue(node);
606
- if (isPrimitive(value) && p === 'value') {
607
- updateTracking(node);
613
+ if (isPrimitive(value)) {
614
+ if (p === 'value') {
615
+ return get(node);
616
+ }
617
+ else if (extraPrimitiveProps.size) {
618
+ const vPrim = extraPrimitiveProps.get(p);
619
+ if (vPrim !== undefined) {
620
+ return (_b = (_a = vPrim === null || vPrim === void 0 ? void 0 : vPrim.__fn) === null || _a === void 0 ? void 0 : _a.call(vPrim, node)) !== null && _b !== void 0 ? _b : vPrim;
621
+ }
622
+ }
608
623
  return value;
609
624
  }
610
625
  const vProp = value === null || value === void 0 ? void 0 : value[p];
@@ -632,12 +647,6 @@ const proxyHandler = {
632
647
  }
633
648
  // Accessing primitive returns the raw value
634
649
  if (isPrimitive(vProp)) {
635
- if (extraPrimitiveProps.size) {
636
- const vPrim = extraPrimitiveProps.get(p);
637
- if (vPrim !== undefined) {
638
- return (_b = (_a = vPrim === null || vPrim === void 0 ? void 0 : vPrim.__fn) === null || _a === void 0 ? void 0 : _a.call(vPrim, node)) !== null && _b !== void 0 ? _b : vPrim;
639
- }
640
- }
641
650
  // Update that this primitive node was accessed for observers
642
651
  if (isArray(value) && p === 'length') {
643
652
  updateTracking(node, true);
@@ -678,15 +687,8 @@ const proxyHandler = {
678
687
  if (inSet) {
679
688
  return Reflect.set(node, prop, value);
680
689
  }
681
- if (!inAssign && node.root.safeMode) {
682
- // Don't allow in safe mode
683
- if (node.root.safeMode === 2)
684
- return false;
685
- // Don't allow set on objects in default mode
686
- const existing = getNodeValue(getChildNode(node, prop));
687
- if (isObject(existing) || isArray(existing) || isObject(value) || isArray(value)) {
688
- return false;
689
- }
690
+ if (!inAssign && prop !== 'value') {
691
+ return false;
690
692
  }
691
693
  setKey(node, prop, value);
692
694
  return true;
@@ -694,18 +696,11 @@ const proxyHandler = {
694
696
  deleteProperty(target, prop) {
695
697
  // If this delete comes from within an observable function it's allowed
696
698
  if (inSet) {
697
- Reflect.deleteProperty(target, prop);
698
- }
699
- else if (target.root.safeMode) {
700
- return false;
699
+ return Reflect.deleteProperty(target, prop);
701
700
  }
702
701
  else {
703
- if (process.env.NODE_ENV === 'development' && tracking.isTracking) {
704
- console.error(`[legend-state] Should not delete an observable property within an observer. You may have done this by accident. Please use delete() if you really want to do this.`);
705
- }
706
- deleteFn(target, prop);
702
+ return false;
707
703
  }
708
- return true;
709
704
  },
710
705
  has(target, prop) {
711
706
  const value = getNodeValue(target);
@@ -809,34 +804,36 @@ function deleteFn(node, key) {
809
804
  // delete sets to undefined first to notify
810
805
  setKey(node, key, symbolUndef, /*level*/ -1);
811
806
  }
812
- function observable(value, safe) {
807
+ function createObservable(value, makePrimitive) {
813
808
  const promise = (value === null || value === void 0 ? void 0 : value.then) && value;
814
809
  if (promise) {
815
810
  value = undefined;
816
811
  }
817
- const obs = {
812
+ const root = {
818
813
  _: promise ? undefined : value,
819
- safeMode: safe === true ? 2 : safe === false ? 0 : 1,
820
814
  };
821
815
  const node = {
822
816
  id: nextNodeID.current++,
823
- root: obs,
817
+ root,
824
818
  };
825
- if (isActualPrimitive(value)) {
826
- return new ObservablePrimitiveClass(node);
827
- }
828
- else {
829
- const proxy = getProxy(node);
830
- if (promise) {
831
- promise.catch((error) => {
832
- proxy.set({ error });
833
- });
834
- promise.then((value) => {
835
- proxy.set(value);
836
- });
837
- }
838
- return proxy;
819
+ const obs = makePrimitive || isActualPrimitive(value)
820
+ ? new ObservablePrimitiveClass(node)
821
+ : getProxy(node);
822
+ if (promise) {
823
+ promise.catch((error) => {
824
+ obs.set({ error });
825
+ });
826
+ promise.then((value) => {
827
+ obs.set(value);
828
+ });
839
829
  }
830
+ return obs;
831
+ }
832
+ function observable(value) {
833
+ return createObservable(value);
834
+ }
835
+ function observablePrimitive(value) {
836
+ return createObservable(value, /*makePrimitive*/ true);
840
837
  }
841
838
 
842
839
  function setupTracking(nodes, update, noArgs) {
@@ -894,23 +891,22 @@ function observe(run) {
894
891
  }
895
892
 
896
893
  function computed(compute) {
897
- // Create an observable for this computed variable set to the initial value
898
- let obs;
899
- const fn = function () {
900
- const val = compute();
901
- if (obs) {
902
- // Update the computed value
903
- lockObservable(obs, false);
904
- obs.set(val);
905
- lockObservable(obs, true);
906
- }
907
- else {
908
- // Create the observable on the first run
909
- obs = observable(val);
910
- lockObservable(obs, true);
911
- }
894
+ // Create an observable primitive for this computed variable
895
+ let obs = observable();
896
+ lockObservable(obs, true);
897
+ // Lazily activate the observable when get is called
898
+ getNode(obs).activate = () => {
899
+ const fn = function () {
900
+ const val = compute();
901
+ if (obs) {
902
+ // Update the computed value
903
+ lockObservable(obs, false);
904
+ obs.set(val);
905
+ lockObservable(obs, true);
906
+ }
907
+ };
908
+ observe(fn);
912
909
  };
913
- observe(fn);
914
910
  return obs;
915
911
  }
916
912
 
@@ -963,5 +959,5 @@ function when(predicate, effect) {
963
959
  return promise || cleanup;
964
960
  }
965
961
 
966
- export { ObservablePrimitiveClass, batch, beginBatch, beginTracking, computed, endBatch, endTracking, event, extraPrimitiveProps, getNode, getNodeValue, isArray, isEmpty, isFunction, isObject, isObservable, isPrimitive, lockObservable, mergeIntoObservable, observable, observe, onChange, setupTracking, symbolDateModified, symbolIsObservable, symbolUndef, tracking, updateTracking, when };
962
+ export { ObservablePrimitiveClass, batch, beginBatch, beginTracking, computed, endBatch, endTracking, event, extraPrimitiveProps, getNode, getNodeValue, isArray, isEmpty, isFunction, isObject, isObservable, isPrimitive, lockObservable, mergeIntoObservable, observable, observablePrimitive, observe, onChange, setupTracking, symbolDateModified, symbolIsObservable, symbolUndef, tracking, updateTracking, when };
967
963
  //# sourceMappingURL=index.mjs.map
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/is.ts","../../src/tracking.ts","../../src/globals.ts","../node_modules/tslib/tslib.es6.js","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/helpers.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/tracking.ts","../../src/is.ts","../../src/globals.ts","../node_modules/tslib/tslib.es6.js","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/helpers.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n",null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@legendapp/state",
3
- "version": "0.17.0-next.6",
3
+ "version": "0.17.0-next.8",
4
4
  "description": "legend-state",
5
5
  "sideEffects": false,
6
6
  "private": false,
@@ -4,9 +4,9 @@ export declare class ObservablePrimitiveClass<T = any> implements ObservablePrim
4
4
  [Symbol.iterator]: any;
5
5
  constructor(node: NodeValue);
6
6
  get value(): T;
7
- set value(value: T);
8
7
  peek(): T;
9
8
  get(track?: boolean | 'optimize'): T;
9
+ set value(value: T);
10
10
  set(value: T | ((prev: T) => T)): ObservableChild<T>;
11
11
  onChange(cb: ListenerFn<T>, track?: boolean | 'optimize', noArgs?: boolean): ObservableListenerDispose;
12
12
  }
@@ -1,8 +1,7 @@
1
- import { ObservableObjectOrArray, ObservableObjectOrArrayDefault, ObservableObjectOrArraySafe, ObservablePrimitive } from './observableInterfaces';
2
- export declare function observable(value: boolean | Promise<boolean>, safe?: boolean): ObservablePrimitive<boolean>;
3
- export declare function observable(value: string | Promise<string>, safe?: boolean): ObservablePrimitive<string>;
4
- export declare function observable(value: number | Promise<number>, safe?: boolean): ObservablePrimitive<number>;
5
- export declare function observable<T extends object>(value: T | Promise<T>, safe: true): ObservableObjectOrArraySafe<T>;
6
- export declare function observable<T extends object>(value: T | Promise<T>, safe: false): ObservableObjectOrArray<T>;
7
- export declare function observable<T extends object>(value?: T | Promise<T>, safe?: undefined): ObservableObjectOrArrayDefault<T>;
8
- export declare function observable<T extends unknown>(value?: T | Promise<T>, safe?: boolean): ObservableObjectOrArray<unknown>;
1
+ import { ObservableObjectOrArray, ObservablePrimitive } from './observableInterfaces';
2
+ export declare function observable(value: boolean | Promise<boolean>): ObservablePrimitive<boolean>;
3
+ export declare function observable(value: string | Promise<string>): ObservablePrimitive<string>;
4
+ export declare function observable(value: number | Promise<number>): ObservablePrimitive<number>;
5
+ export declare function observable<T extends object>(value?: T | Promise<T>): ObservableObjectOrArray<T>;
6
+ export declare function observable<T extends unknown>(value?: T | Promise<T>): ObservableObjectOrArray<unknown>;
7
+ export declare function observablePrimitive<T>(value?: T | Promise<T>): ObservablePrimitive<T>;
@@ -42,19 +42,16 @@ declare type NonPrimitiveKeys<T> = Pick<T, {
42
42
  [K in keyof T]-?: T[K] extends Primitive ? never : K;
43
43
  }[keyof T]>;
44
44
  declare type Recurse<T, K extends keyof T, TRecurse> = T[K] extends Function | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? T[K] : T[K] extends Primitive ? ObservablePrimitiveChild<T[K]> : T[K] extends Array<any> ? Omit<T[K], ArrayOverrideFnNames> & ObservableObjectFns<T[K]> & ObservableArrayOverride<ObservableObject<T[K][number]>> : T extends object ? TRecurse : T[K];
45
- declare type ObservableFnsRecursive<T> = {
45
+ declare type ObservableFnsRecursiveUnsafe<T> = {
46
46
  [K in keyof T]: Recurse<T, K, ObservableObject<T[K]>>;
47
47
  };
48
- declare type ObservableComputedFnsRecursive<T> = {
49
- [K in keyof T]: Recurse<T, K, ObservableBaseFns<T[K]>>;
50
- };
51
48
  declare type ObservableFnsRecursiveSafe<T> = {
52
- readonly [K in keyof T]: Recurse<T, K, ObservableObjectSafe<T[K]>>;
49
+ readonly [K in keyof T]: Recurse<T, K, ObservableObject<T[K]>>;
53
50
  };
54
- declare type ObservableFnsRecursiveDefaultObject<T> = {
55
- readonly [K in keyof T]: Recurse<T, K, ObservableObjectDefault<T[K]>>;
51
+ declare type ObservableFnsRecursive<T> = ObservableFnsRecursiveSafe<NonPrimitiveKeys<T>> & ObservableFnsRecursiveUnsafe<PrimitiveKeys<T>>;
52
+ declare type ObservableComputedFnsRecursive<T> = {
53
+ readonly [K in keyof T]: Recurse<T, K, ObservableBaseFns<T[K]>>;
56
54
  };
57
- declare type ObservableFnsRecursiveDefault<T> = ObservableFnsRecursiveDefaultObject<NonPrimitiveKeys<T>> & ObservableFnsRecursive<PrimitiveKeys<T>>;
58
55
  export interface ObservableEvent {
59
56
  dispatch(): void;
60
57
  on(cb?: () => void): ObservableListenerDispose;
@@ -149,23 +146,16 @@ export declare type ClassConstructor<I, Args extends any[] = any[]> = new (...ar
149
146
  export declare type ObservableListenerDispose = () => void;
150
147
  export interface ObservableWrapper {
151
148
  _: any;
152
- safeMode: 0 | 1 | 2;
153
149
  locked?: boolean;
154
150
  }
155
151
  export declare type Primitive = boolean | string | number | Date;
156
152
  export declare type NotPrimitive<T> = T extends Primitive ? never : T;
157
153
  export declare type ObservableArray<T extends any[]> = Omit<T, ArrayOverrideFnNames> & ObservableObjectFns<T> & ObservableArrayOverride<ObservableObject<T[number]>>;
158
- export declare type ObservableArraySafe<T extends any[]> = Omit<T, ArrayOverrideFnNames> & ObservableObjectFns<T> & ObservableArrayOverride<ObservableObjectSafe<T[number]>>;
159
- export declare type ObservableArrayDefault<T extends any[]> = Omit<T, ArrayOverrideFnNames> & ObservableObjectFns<T> & ObservableArrayOverride<ObservableObjectDefault<T[number]>>;
160
154
  export declare type ObservableObject<T = any> = ObservableFnsRecursive<T> & ObservableObjectFns<T>;
161
- export declare type ObservableObjectSafe<T = any> = ObservableFnsRecursiveSafe<T> & ObservableObjectFns<T>;
162
- export declare type ObservableObjectDefault<T = any> = ObservableFnsRecursiveDefault<T> & ObservableObjectFns<T>;
163
155
  export declare type ObservableChild<T = any> = [T] extends [Primitive] ? ObservablePrimitiveChildFns<T> : ObservableObject<T>;
164
156
  export declare type ObservableRef<T = any> = [T] extends [Primitive] ? ObservablePrimitiveFns<T> : ObservableObject<T>;
165
157
  export declare type ObservablePrimitiveChild<T = any> = ObservablePrimitive<T> & ObservablePrimitiveChildFns<T>;
166
158
  export declare type ObservableObjectOrArray<T> = T extends any[] ? ObservableArray<T> : ObservableObject<T>;
167
- export declare type ObservableObjectOrArraySafe<T> = T extends any[] ? ObservableArraySafe<T> : ObservableObjectSafe<T>;
168
- export declare type ObservableObjectOrArrayDefault<T> = T extends any[] ? ObservableArrayDefault<T> : ObservableObjectDefault<T>;
169
159
  export declare type ObservableComputed<T = any> = ObservableBaseFns<T> & ObservableComputedFnsRecursive<T> & ([T] extends [Primitive] ? {
170
160
  readonly value: T;
171
161
  } : T);
@@ -184,5 +174,6 @@ export interface NodeValue {
184
174
  noArgs?: boolean;
185
175
  listener: ListenerFn;
186
176
  }>;
177
+ activate?: () => void;
187
178
  }
188
179
  export {};
@@ -1,3 +1,3 @@
1
- import type { ObservablePersistState, ObservableReadable, PersistOptions } from '../observableInterfaces';
1
+ import type { ObservableObject, ObservablePersistState, ObservableReadable, PersistOptions } from '../observableInterfaces';
2
2
  export declare const mapPersistences: WeakMap<any, any>;
3
- export declare function persistObservable<T>(obs: ObservableReadable<T>, persistOptions: PersistOptions<T>): import("@legendapp/state").ObservableObjectDefault<ObservablePersistState>;
3
+ export declare function persistObservable<T>(obs: ObservableReadable<T>, persistOptions: PersistOptions<T>): ObservableObject<ObservablePersistState>;
package/src/tracking.d.ts CHANGED
@@ -9,4 +9,3 @@ export declare function beginTracking(): Map<number, TrackingNode>;
9
9
  export declare function endTracking(prevNodes: Map<number, TrackingNode>): void;
10
10
  export declare function updateTracking(node: NodeValue, track?: TrackingType): void;
11
11
  export declare function untrack(node: NodeValue): void;
12
- export declare function checkTracking(node: NodeValue, track: TrackingType): void;