jpf-mobx 1.0.46 → 1.0.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controls/html/Select/Select.d.ts +1 -1
- package/dist/controls/html/Select/Select.js.map +1 -1
- package/dist/framework/observable.d.ts +5 -3
- package/dist/framework/observable.js +31 -10
- package/dist/framework/observable.js.map +1 -1
- package/package.json +1 -1
- package/src/controls/html/Select/Select.ts +1 -1
- package/src/framework/observable.ts +37 -12
|
@@ -20,7 +20,7 @@ declare class SelectElement<TItem, TValue, TSetter = TValue> extends Element<ISe
|
|
|
20
20
|
export declare function selectElement<TItem, TValue, TSetter = TValue>(properties: ISelectProperties<TItem, TValue, TSetter>): SelectElement<TItem, TValue, TSetter>;
|
|
21
21
|
export declare class SelectProperties<TItem, TValue, TSetter = TValue> extends Properties implements ISelectProperties<TItem, TValue, TSetter> {
|
|
22
22
|
constructor(properties: ISelectProperties<TItem, TValue, TSetter>);
|
|
23
|
-
value?: TValue | ObservableValue<TValue
|
|
23
|
+
value?: TValue | ObservableValue<TValue>;
|
|
24
24
|
items?: Array<TItem> | ObservableArray<TItem>;
|
|
25
25
|
textFunction: (item: TItem) => string;
|
|
26
26
|
valueFunction: (item: TItem) => TValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../../src/controls/html/Select/Select.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../../src/controls/html/Select/Select.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { computed, IObservableValue, IObservableArray as mobxObservableArray, ObservableMap as mobxObservableMap, ObservableSet as mobxObservableSet, action, CreateObservableOptions, IObservableMapInitialValues, IObservableSetInitialValues, IReactionPublic, IAutorunOptions, IReactionDisposer, IReactionOptions } from "mobx";
|
|
2
|
-
export interface ObservableValue<TValue = any
|
|
2
|
+
export interface ObservableValue<TValue = any> extends Subscribable<TValue> {
|
|
3
3
|
setInternal(value: TValue): any;
|
|
4
4
|
}
|
|
5
5
|
export interface ObservableArray<TItem> extends mobxObservableArray<TItem> {
|
|
6
|
+
pushInternal(...items: TItem[]): number;
|
|
7
|
+
replaceInternal(newItems: TItem[]): TItem[];
|
|
6
8
|
}
|
|
7
9
|
export interface ObservableMap<TKey, TValue> extends mobxObservableMap<TKey, TValue> {
|
|
8
10
|
}
|
|
@@ -12,8 +14,8 @@ export { computed, action };
|
|
|
12
14
|
export declare function autorun(view: (r: IReactionPublic) => any, opts?: IAutorunOptions): IReactionDisposer;
|
|
13
15
|
export declare function runInAction<T>(fn: () => T): T;
|
|
14
16
|
export declare function reaction<T, FireImmediately extends boolean = false>(expression: (r: IReactionPublic) => T, effect: (arg: T, prev: FireImmediately extends true ? T | undefined : T, r: IReactionPublic) => void, opts?: IReactionOptions<T, FireImmediately>): IReactionDisposer;
|
|
15
|
-
export declare function observableValue<TValue, TSetter = TValue>(value?: null | TValue, setter?: (value: TSetter,
|
|
16
|
-
export declare function observableArray<TItem = any>(initialValues?: Array<TItem>, options?: CreateObservableOptions): mobxObservableArray<TItem>;
|
|
17
|
+
export declare function observableValue<TValue, TSetter = TValue>(value?: null | TValue, setter?: (value: TSetter, internalValue: ObservableValue<TValue>) => void, options?: CreateObservableOptions): ObservableValue<TValue>;
|
|
18
|
+
export declare function observableArray<TItem = any, TSetter = TItem>(initialValues?: Array<TItem>, setter?: (value: TSetter, internalArray: mobxObservableArray<TItem>) => void, options?: CreateObservableOptions): mobxObservableArray<TItem>;
|
|
17
19
|
export declare function observableMap<TKey = any, TItem = any>(initialValues?: IObservableMapInitialValues<TKey, TItem>, options?: CreateObservableOptions): mobxObservableMap<TKey, TItem>;
|
|
18
20
|
export declare function observableSet<TItem = any>(initialValues?: IObservableSetInitialValues<TItem>, options?: CreateObservableOptions): mobxObservableSet<TItem>;
|
|
19
21
|
export interface Subscribable<TValue> extends IObservableValue<TValue> {
|
|
@@ -20,22 +20,43 @@ export function runInAction(fn) {
|
|
|
20
20
|
export function reaction(expression, effect, opts) {
|
|
21
21
|
return mobxReaction(expression, effect, opts);
|
|
22
22
|
}
|
|
23
|
-
export function observableValue(value, setter) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
if (setter
|
|
28
|
-
setter(
|
|
23
|
+
export function observableValue(value, setter, options) {
|
|
24
|
+
const internalValue = observable.box(value, options);
|
|
25
|
+
internalValue.setInternal = internalValue.set;
|
|
26
|
+
internalValue.set = (...items) => {
|
|
27
|
+
if (setter) {
|
|
28
|
+
setter(items, internalValue);
|
|
29
29
|
}
|
|
30
30
|
else {
|
|
31
|
-
|
|
31
|
+
internalValue.setInternal(items);
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
|
-
return
|
|
34
|
+
return internalValue;
|
|
35
35
|
}
|
|
36
|
-
export function observableArray(initialValues, options) {
|
|
36
|
+
export function observableArray(initialValues, setter, options) {
|
|
37
37
|
options = setDefaultOptions(options, { deep: false });
|
|
38
|
-
|
|
38
|
+
const internalArray = observable.array(initialValues, options);
|
|
39
|
+
internalArray.pushInternal = internalArray.push;
|
|
40
|
+
internalArray.replaceInternal = internalArray.replace;
|
|
41
|
+
internalArray.push = (...newValue) => {
|
|
42
|
+
if (setter) {
|
|
43
|
+
setter(newValue, internalArray);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
internalArray.pushInternal(newValue);
|
|
47
|
+
}
|
|
48
|
+
return 0;
|
|
49
|
+
};
|
|
50
|
+
internalArray.replace = (items) => {
|
|
51
|
+
if (setter) {
|
|
52
|
+
setter(items, internalArray);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
internalArray.replaceInternal(items);
|
|
56
|
+
}
|
|
57
|
+
return items;
|
|
58
|
+
};
|
|
59
|
+
return internalArray;
|
|
39
60
|
}
|
|
40
61
|
export function observableMap(initialValues, options) {
|
|
41
62
|
options = setDefaultOptions(options, { deep: false });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/framework/observable.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,QAAQ,EAKR,UAAU,EACV,iBAAiB,IAAI,qBAAqB,EAC1C,iBAAiB,IAAI,qBAAqB,EAC1C,eAAe,IAAI,mBAAmB,EACtC,eAAe,IAAI,mBAAmB,EACtC,MAAM,EACN,WAAW,IAAI,eAAe,EAC9B,OAAO,IAAI,WAAW,EACtB,QAAQ,IAAI,YAAY,EAQ3B,MAAM,MAAM,CAAC;AAEd,SAAS,iBAAiB,CAAW,MAAgB,EAAE,MAAgB;IACnE,IAAI,MAAM,EAAE;QACR,MAAM,GAAG,MAAM,IAAI,EAAc,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAChC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;aAC7B;QACL,CAAC,CAAC,CAAC;KACN;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/framework/observable.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -139,7 +139,7 @@ export class SelectProperties<TItem, TValue, TSetter = TValue> extends Propertie
|
|
|
139
139
|
super();
|
|
140
140
|
this.setProperties(this, properties);
|
|
141
141
|
}
|
|
142
|
-
value?: TValue | ObservableValue<TValue
|
|
142
|
+
value?: TValue | ObservableValue<TValue>;
|
|
143
143
|
items?: Array<TItem> | ObservableArray<TItem>;
|
|
144
144
|
textFunction: (item: TItem) => string;
|
|
145
145
|
valueFunction: (item: TItem) => TValue;
|
|
@@ -35,12 +35,13 @@ function setDefaultOptions<TOptions>(target: TOptions, source: TOptions): TOptio
|
|
|
35
35
|
|
|
36
36
|
return target;
|
|
37
37
|
}
|
|
38
|
-
export interface ObservableValue<TValue = any
|
|
38
|
+
export interface ObservableValue<TValue = any> extends Subscribable<TValue> {
|
|
39
39
|
setInternal(value: TValue);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
export interface ObservableArray<TItem> extends mobxObservableArray<TItem> {
|
|
43
|
-
|
|
43
|
+
pushInternal(...items: TItem[]): number;
|
|
44
|
+
replaceInternal(newItems: TItem[]): TItem[];
|
|
44
45
|
}
|
|
45
46
|
|
|
46
47
|
export interface ObservableMap<TKey, TValue> extends mobxObservableMap<TKey, TValue> {
|
|
@@ -65,26 +66,50 @@ export function reaction<T, FireImmediately extends boolean = false>(expression:
|
|
|
65
66
|
return mobxReaction<T, FireImmediately>(expression, effect, opts);
|
|
66
67
|
}
|
|
67
68
|
|
|
68
|
-
export function observableValue<TValue, TSetter = TValue>(value?: null | TValue, setter?: (value: TSetter,
|
|
69
|
-
|
|
69
|
+
export function observableValue<TValue, TSetter = TValue>(value?: null | TValue, setter?: (value: TSetter, internalValue: ObservableValue<TValue>) => void, options?: CreateObservableOptions): ObservableValue<TValue> {
|
|
70
|
+
const internalValue = observable.box(value, options) as ObservableValue<TValue>;
|
|
70
71
|
|
|
71
72
|
|
|
72
|
-
|
|
73
|
+
internalValue.setInternal = internalValue.set;
|
|
73
74
|
|
|
74
|
-
|
|
75
|
-
if (setter
|
|
76
|
-
setter(
|
|
75
|
+
internalValue.set = (...items: any) => {
|
|
76
|
+
if (setter) {
|
|
77
|
+
setter(items, internalValue);
|
|
77
78
|
} else {
|
|
78
|
-
|
|
79
|
+
internalValue.setInternal(items);
|
|
79
80
|
}
|
|
80
81
|
};
|
|
81
82
|
|
|
82
|
-
return
|
|
83
|
+
return internalValue;
|
|
83
84
|
}
|
|
84
85
|
|
|
85
|
-
export function observableArray<TItem = any>(initialValues?: Array<TItem>, options?: CreateObservableOptions): mobxObservableArray<TItem> {
|
|
86
|
+
export function observableArray<TItem = any, TSetter = TItem>(initialValues?: Array<TItem>, setter?: (value: TSetter, internalArray: mobxObservableArray<TItem>) => void, options?: CreateObservableOptions): mobxObservableArray<TItem> {
|
|
86
87
|
options = setDefaultOptions(options, { deep: false });
|
|
87
|
-
|
|
88
|
+
|
|
89
|
+
const internalArray = observable.array(initialValues, options) as ObservableArray<TItem>;
|
|
90
|
+
internalArray.pushInternal = internalArray.push;
|
|
91
|
+
internalArray.replaceInternal = internalArray.replace;
|
|
92
|
+
|
|
93
|
+
internalArray.push = (...newValue: any) => {
|
|
94
|
+
if (setter) {
|
|
95
|
+
setter(newValue, internalArray);
|
|
96
|
+
} else {
|
|
97
|
+
internalArray.pushInternal(newValue);
|
|
98
|
+
}
|
|
99
|
+
return 0;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
internalArray.replace = (items: any) => {
|
|
103
|
+
if (setter) {
|
|
104
|
+
setter(items, internalArray);
|
|
105
|
+
} else {
|
|
106
|
+
internalArray.replaceInternal(items);
|
|
107
|
+
}
|
|
108
|
+
return items;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
return internalArray;
|
|
88
113
|
}
|
|
89
114
|
|
|
90
115
|
export function observableMap<TKey = any, TItem = any>(initialValues?: IObservableMapInitialValues<TKey, TItem>, options?: CreateObservableOptions) {
|