jpf-mobx 1.0.191 → 1.0.192

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.
@@ -2,7 +2,7 @@ import { IComputedValueOptions as mobxIComputedValueOptions, CreateObservableOpt
2
2
  import { observable as jpfObservable } from "jpf";
3
3
  export declare function runInAction<T>(fn: () => T): T;
4
4
  export type IComputed<TValue> = jpfObservable.IComputed<TValue>;
5
- export type IDisposer = jpfObservable.IDisposer;
5
+ export type ISubcription = jpfObservable.ISubscription;
6
6
  export type IObservableArray<TItem = any, TSetter = TItem[]> = jpfObservable.IObservableArray<TItem, TSetter>;
7
7
  export type IObservableMap<TKey = unknown, TItem = unknown> = jpfObservable.IObservableMap<TKey, TItem>;
8
8
  export type IObservableSet<TItem = unknown> = jpfObservable.IObservableSet<TItem>;
@@ -51,12 +51,17 @@ export function computed(func, options) {
51
51
  const computed = mobxComputed(func, options);
52
52
  const iComputed = computed;
53
53
  iComputed.subscribe = (effect) => {
54
- element.disposeCounterIncrement();
55
- return mobxReaction(() => {
54
+ element.subscriptionCounterIncrement();
55
+ const disposer = mobxReaction(() => {
56
56
  return unwrap(iComputed);
57
57
  }, (value, prev, r) => {
58
58
  effect(value, prev, r);
59
59
  });
60
+ return {
61
+ dispose: () => {
62
+ disposer();
63
+ }
64
+ };
60
65
  };
61
66
  return iComputed;
62
67
  }
@@ -91,12 +96,17 @@ export function observableValue(value, setter, options) {
91
96
  });
92
97
  };
93
98
  observableValue.subscribe = (effect) => {
94
- element.disposeCounterIncrement();
95
- return mobxReaction(() => {
99
+ element.subscriptionCounterIncrement();
100
+ const disposer = mobxReaction(() => {
96
101
  return unwrap(observableValue);
97
102
  }, (value, prev, r) => {
98
103
  effect(value, prev, r);
99
104
  });
105
+ return {
106
+ dispose: () => {
107
+ disposer();
108
+ }
109
+ };
100
110
  };
101
111
  return observableValue;
102
112
  }
@@ -127,12 +137,17 @@ export function observableArray(initialValues, setter, options) {
127
137
  };
128
138
  observableArray.get = observableArray["toJSON"];
129
139
  observableArray.subscribe = (effect) => {
130
- element.disposeCounterIncrement();
131
- return mobxReaction(() => {
140
+ element.subscriptionCounterIncrement();
141
+ const disposer = mobxReaction(() => {
132
142
  return unwrap(observableArray);
133
143
  }, (value, prev, r) => {
134
144
  effect(value, prev, r);
135
145
  });
146
+ return {
147
+ dispose: () => {
148
+ disposer();
149
+ }
150
+ };
136
151
  };
137
152
  return observableArray;
138
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observable.js","sourceRoot":"","sources":["../src/observable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../src/observable.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jpf-mobx",
3
- "version": "1.0.191",
3
+ "version": "1.0.192",
4
4
  "description": "Javascript Presentation Foundation with mobx state management",
5
5
  "keywords": [
6
6
  "mvvm",
@@ -43,7 +43,7 @@
43
43
  "esLint": "npx eslint src/**"
44
44
  },
45
45
  "dependencies": {
46
- "jpf": "5.0.98",
46
+ "jpf": "5.0.99",
47
47
  "mobx": "6.15.0"
48
48
  },
49
49
  "devDependencies": {
package/src/observable.ts CHANGED
@@ -36,12 +36,12 @@ export function runInAction<T>(fn: () => T): T {
36
36
  return mobxRunInAction<T>(fn);
37
37
  }
38
38
 
39
- export type IComputed<TValue> = jpfObservable.IComputed<TValue>
40
- export type IDisposer = jpfObservable.IDisposer
41
- export type IObservableArray<TItem = any, TSetter = TItem[]> = jpfObservable.IObservableArray<TItem, TSetter>
42
- export type IObservableMap<TKey = unknown, TItem = unknown> = jpfObservable.IObservableMap<TKey, TItem>
43
- export type IObservableSet<TItem = unknown> = jpfObservable.IObservableSet<TItem>
44
- export type IObservableValue<TValue, TSetter = TValue> = jpfObservable.IObservableValue<TValue, TSetter>
39
+ export type IComputed<TValue> = jpfObservable.IComputed<TValue>;
40
+ export type ISubcription = jpfObservable.ISubscription;
41
+ export type IObservableArray<TItem = any, TSetter = TItem[]> = jpfObservable.IObservableArray<TItem, TSetter>;
42
+ export type IObservableMap<TKey = unknown, TItem = unknown> = jpfObservable.IObservableMap<TKey, TItem>;
43
+ export type IObservableSet<TItem = unknown> = jpfObservable.IObservableSet<TItem>;
44
+ export type IObservableValue<TValue, TSetter = TValue> = jpfObservable.IObservableValue<TValue, TSetter>;
45
45
  export type ISubscribable<TValue> = jpfObservable.ISubscribable<TValue>;
46
46
 
47
47
  export function unwrap<TValue>(value: TValue | jpfObservable.ISubscribable<TValue>): TValue {
@@ -93,9 +93,9 @@ export function computed<TComputed>(func: () => TComputed, options?: mobxIComput
93
93
  const iComputed = computed as unknown as jpfObservable.IComputed<TComputed>;
94
94
 
95
95
  iComputed.subscribe = (effect: (arg: TComputed, prev: TComputed, r: mobxIReactionPublic) => void) => {
96
- element.disposeCounterIncrement();
96
+ element.subscriptionCounterIncrement();
97
97
 
98
- return mobxReaction(
98
+ const disposer = mobxReaction(
99
99
  () => {
100
100
  return unwrap(iComputed);
101
101
  },
@@ -103,6 +103,11 @@ export function computed<TComputed>(func: () => TComputed, options?: mobxIComput
103
103
  effect(value, prev, r);
104
104
  }
105
105
  );
106
+ return {
107
+ dispose: () => {
108
+ disposer();
109
+ }
110
+ }
106
111
  }
107
112
 
108
113
  return iComputed;
@@ -145,9 +150,9 @@ export function observableValue<TValue, TSetter = TValue>(value?: TValue | null,
145
150
  };
146
151
 
147
152
  observableValue.subscribe = (effect: (arg: TValue, prev: TValue, r: mobxIReactionPublic) => void) => {
148
- element.disposeCounterIncrement();
153
+ element.subscriptionCounterIncrement();
149
154
 
150
- return mobxReaction(
155
+ const disposer = mobxReaction(
151
156
  () => {
152
157
  return unwrap(observableValue);
153
158
  },
@@ -155,6 +160,11 @@ export function observableValue<TValue, TSetter = TValue>(value?: TValue | null,
155
160
  effect(value, prev, r);
156
161
  }
157
162
  );
163
+ return {
164
+ dispose: () => {
165
+ disposer();
166
+ }
167
+ }
158
168
  };
159
169
 
160
170
  return observableValue;
@@ -194,10 +204,10 @@ export function observableArray<TItem = unknown, TSetter = Array<TItem>>(initial
194
204
  observableArray.get = observableArray["toJSON"];
195
205
 
196
206
  observableArray.subscribe = (effect: (arg: Array<TItem>, prev: Array<TItem>, r: mobxIReactionPublic) => void) => {
197
-
198
- element.disposeCounterIncrement();
199
207
 
200
- return mobxReaction(
208
+ element.subscriptionCounterIncrement();
209
+
210
+ const disposer = mobxReaction(
201
211
  () => {
202
212
  return unwrap(observableArray);
203
213
  },
@@ -205,6 +215,12 @@ export function observableArray<TItem = unknown, TSetter = Array<TItem>>(initial
205
215
  effect(value, prev, r);
206
216
  }
207
217
  );
218
+
219
+ return{
220
+ dispose: () => {
221
+ disposer();
222
+ }
223
+ }
208
224
  };
209
225
 
210
226
  return observableArray;