@darajs/core 1.7.1 → 1.7.2
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/{dara_core-1.7.1-py3-none-any.whl → dara_core-1.7.2-py3-none-any.whl} +0 -0
- package/dist/shared/interactivity/plain-variable.d.ts.map +1 -1
- package/dist/shared/interactivity/plain-variable.js +79 -20
- package/dist/shared/interactivity/plain-variable.js.map +1 -1
- package/dist/umd/dara.core.umd.js +796 -205
- package/package.json +9 -9
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plain-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAA8B,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"plain-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAA8B,MAAM,QAAQ,CAAC;AAG7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,aAAa,EAA6B,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAmB,cAAc,EAAqB,MAAM,SAAS,CAAC;AAsG7E;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EACxC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAC3B,QAAQ,EAAE,wBAAwB,EAClC,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,aAAa,GACtB,WAAW,CAAC,CAAC,CAAC,CAoJhB"}
|
|
@@ -9,8 +9,9 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
9
9
|
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");
|
|
10
10
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
11
|
};
|
|
12
|
-
var _a, _StateSynchronizer_instance,
|
|
12
|
+
var _a, _StateSynchronizer_instance, _StateSynchronizer_observers;
|
|
13
13
|
import { atomFamily, selectorFamily } from 'recoil';
|
|
14
|
+
import { BehaviorSubject } from 'rxjs';
|
|
14
15
|
import { RequestExtrasSerializable } from '../../api/http';
|
|
15
16
|
import { isEmbedded } from '../../shared/utils/embed';
|
|
16
17
|
import { isDerivedVariable } from '../../types';
|
|
@@ -26,7 +27,7 @@ import { atomFamilyMembersRegistry, atomFamilyRegistry, getRegistryKey, selector
|
|
|
26
27
|
class StateSynchronizer {
|
|
27
28
|
// eslint-disable-next-line no-useless-constructor, no-empty-function
|
|
28
29
|
constructor() {
|
|
29
|
-
|
|
30
|
+
_StateSynchronizer_observers.set(this, new Map());
|
|
30
31
|
}
|
|
31
32
|
static getInstance() {
|
|
32
33
|
if (!__classPrivateFieldGet(_a, _a, "f", _StateSynchronizer_instance)) {
|
|
@@ -34,34 +35,70 @@ class StateSynchronizer {
|
|
|
34
35
|
}
|
|
35
36
|
return __classPrivateFieldGet(_a, _a, "f", _StateSynchronizer_instance);
|
|
36
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Register a key in the state synchronizer
|
|
40
|
+
*
|
|
41
|
+
* @param key key to register
|
|
42
|
+
* @param defaultValue value to register
|
|
43
|
+
*/
|
|
44
|
+
register(key, defaultValue) {
|
|
45
|
+
if (!__classPrivateFieldGet(this, _StateSynchronizer_observers, "f").has(key)) {
|
|
46
|
+
__classPrivateFieldGet(this, _StateSynchronizer_observers, "f").set(key, new BehaviorSubject({ type: 'initial', value: defaultValue }));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Check if a given key is registered in the state synchronizer
|
|
51
|
+
*
|
|
52
|
+
* @param key key to check if registered
|
|
53
|
+
*/
|
|
54
|
+
isRegistered(key) {
|
|
55
|
+
return __classPrivateFieldGet(this, _StateSynchronizer_observers, "f").has(key);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Get the current state for a given key
|
|
59
|
+
*
|
|
60
|
+
* @param key key to get the current value for
|
|
61
|
+
*/
|
|
62
|
+
getCurrentState(key) {
|
|
63
|
+
if (!this.isRegistered(key)) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
return __classPrivateFieldGet(this, _StateSynchronizer_observers, "f").get(key).getValue();
|
|
67
|
+
}
|
|
37
68
|
/**
|
|
38
69
|
* Subscribe to changes on a given key
|
|
39
70
|
*
|
|
40
71
|
* @param key key to subscribe to
|
|
41
|
-
* @param listener listener to invoke on change
|
|
42
|
-
* @returns a cleanup function to unsubscribe
|
|
43
72
|
*/
|
|
44
|
-
subscribe(key,
|
|
45
|
-
|
|
46
|
-
|
|
73
|
+
subscribe(key, subscription) {
|
|
74
|
+
// If somehow the ended up with no listener here, register it with null value
|
|
75
|
+
if (!this.isRegistered(key)) {
|
|
76
|
+
this.register(key, null);
|
|
47
77
|
}
|
|
48
|
-
__classPrivateFieldGet(this,
|
|
78
|
+
const sub = __classPrivateFieldGet(this, _StateSynchronizer_observers, "f").get(key).subscribe(subscription);
|
|
49
79
|
return () => {
|
|
50
|
-
|
|
80
|
+
sub.unsubscribe();
|
|
81
|
+
// if no more observers, remove the listener
|
|
82
|
+
if (__classPrivateFieldGet(this, _StateSynchronizer_observers, "f").get(key).observers.length === 0) {
|
|
83
|
+
__classPrivateFieldGet(this, _StateSynchronizer_observers, "f").delete(key);
|
|
84
|
+
}
|
|
51
85
|
};
|
|
52
86
|
}
|
|
53
87
|
/**
|
|
54
88
|
* Notify listeners for a given key
|
|
55
89
|
*
|
|
56
90
|
* @param key key to notify listeners for
|
|
57
|
-
* @param
|
|
91
|
+
* @param update update to notify about
|
|
58
92
|
*/
|
|
59
|
-
notify(key,
|
|
60
|
-
|
|
61
|
-
|
|
93
|
+
notify(key, update) {
|
|
94
|
+
// If somehow the ended up with no listener here, register it with null value
|
|
95
|
+
if (!this.isRegistered(key)) {
|
|
96
|
+
this.register(key, null);
|
|
97
|
+
}
|
|
98
|
+
__classPrivateFieldGet(this, _StateSynchronizer_observers, "f").get(key).next(update);
|
|
62
99
|
}
|
|
63
100
|
}
|
|
64
|
-
_a = StateSynchronizer,
|
|
101
|
+
_a = StateSynchronizer, _StateSynchronizer_observers = new WeakMap();
|
|
65
102
|
_StateSynchronizer_instance = { value: void 0 };
|
|
66
103
|
/**
|
|
67
104
|
* Get a plain variable from the atom or selector registry (based on nested property),
|
|
@@ -91,23 +128,45 @@ export function getOrRegisterPlainVariable(variable, wsClient, taskContext, extr
|
|
|
91
128
|
: variable.default,
|
|
92
129
|
effects: (extrasSerializable) => {
|
|
93
130
|
const familySync = ({ onSet, setSelf, resetSelf, node }) => {
|
|
131
|
+
// Register the atom in the state synchronizer if not already registered
|
|
132
|
+
if (!StateSynchronizer.getInstance().isRegistered(variable.uid)) {
|
|
133
|
+
StateSynchronizer.getInstance().register(variable.uid, variable.default);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
const currentState = StateSynchronizer.getInstance().getCurrentState(variable.uid);
|
|
137
|
+
if (!isDefaultDerived || (currentState === null || currentState === void 0 ? void 0 : currentState.type) !== 'initial') {
|
|
138
|
+
// Otherwise synchronize the initial value,
|
|
139
|
+
// unless the default is a DerivedVariable and the current state is initial
|
|
140
|
+
// because in that case the default will be linked to the selector which needs to be resolved
|
|
141
|
+
setSelf(currentState === null || currentState === void 0 ? void 0 : currentState.value);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
94
144
|
// Synchronize changes across atoms of the same family
|
|
95
|
-
const unsub = StateSynchronizer.getInstance().subscribe(variable.uid, (
|
|
145
|
+
const unsub = StateSynchronizer.getInstance().subscribe(variable.uid, (update) => {
|
|
146
|
+
if (update.type === 'initial') {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
96
149
|
// skip updates from the same atom
|
|
97
|
-
if (nodeKey === node.key) {
|
|
150
|
+
if (update.nodeKey === node.key) {
|
|
98
151
|
return;
|
|
99
152
|
}
|
|
100
|
-
if (isReset) {
|
|
153
|
+
if (update.isReset) {
|
|
101
154
|
resetSelf();
|
|
102
155
|
}
|
|
103
156
|
else {
|
|
104
|
-
setSelf(
|
|
157
|
+
setSelf(update.value);
|
|
105
158
|
}
|
|
106
159
|
});
|
|
107
160
|
onSet((newValue, oldValue, isReset) => {
|
|
108
|
-
StateSynchronizer.getInstance().notify(variable.uid,
|
|
161
|
+
StateSynchronizer.getInstance().notify(variable.uid, {
|
|
162
|
+
isReset,
|
|
163
|
+
nodeKey: node.key,
|
|
164
|
+
oldValue,
|
|
165
|
+
type: 'update',
|
|
166
|
+
value: newValue,
|
|
167
|
+
});
|
|
109
168
|
});
|
|
110
|
-
return
|
|
169
|
+
return unsub;
|
|
111
170
|
};
|
|
112
171
|
const effects = [familySync];
|
|
113
172
|
// add an effect to handle backend store updates
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plain-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAA2B,UAAU,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"plain-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"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"}
|