@symbo.ls/sdk 3.1.2 → 3.2.3
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/README.md +2 -2
- package/dist/cjs/config/environment.js +5 -21
- package/dist/cjs/index.js +6 -26
- package/dist/cjs/services/AIService.js +3 -3
- package/dist/cjs/services/CollabService.js +420 -0
- package/dist/cjs/services/CoreService.js +651 -107
- package/dist/cjs/services/SocketService.js +207 -59
- package/dist/cjs/services/index.js +5 -13
- package/dist/cjs/state/RootStateManager.js +86 -0
- package/dist/cjs/state/rootEventBus.js +65 -0
- package/dist/cjs/utils/CollabClient.js +157 -0
- package/dist/cjs/utils/TokenManager.js +62 -27
- package/dist/cjs/utils/jsonDiff.js +103 -0
- package/dist/cjs/utils/services.js +129 -88
- package/dist/cjs/utils/symstoryClient.js +5 -5
- package/dist/esm/config/environment.js +5 -21
- package/dist/esm/index.js +20459 -9286
- package/dist/esm/services/AIService.js +3 -3
- package/dist/esm/services/BasedService.js +5 -21
- package/dist/esm/services/CollabService.js +18028 -0
- package/dist/esm/services/CoreService.js +718 -155
- package/dist/esm/services/SocketService.js +323 -58
- package/dist/esm/services/SymstoryService.js +10 -26
- package/dist/esm/services/index.js +20305 -9158
- package/dist/esm/state/RootStateManager.js +102 -0
- package/dist/esm/state/rootEventBus.js +47 -0
- package/dist/esm/utils/CollabClient.js +17483 -0
- package/dist/esm/utils/TokenManager.js +62 -27
- package/dist/esm/utils/jsonDiff.js +6096 -0
- package/dist/esm/utils/services.js +129 -88
- package/dist/esm/utils/symstoryClient.js +10 -26
- package/dist/node/config/environment.js +5 -21
- package/dist/node/index.js +10 -34
- package/dist/node/services/AIService.js +3 -3
- package/dist/node/services/CollabService.js +401 -0
- package/dist/node/services/CoreService.js +651 -107
- package/dist/node/services/SocketService.js +197 -59
- package/dist/node/services/index.js +5 -13
- package/dist/node/state/RootStateManager.js +57 -0
- package/dist/node/state/rootEventBus.js +46 -0
- package/dist/node/utils/CollabClient.js +128 -0
- package/dist/node/utils/TokenManager.js +62 -27
- package/dist/node/utils/jsonDiff.js +74 -0
- package/dist/node/utils/services.js +129 -88
- package/dist/node/utils/symstoryClient.js +5 -5
- package/package.json +12 -6
- package/src/config/environment.js +5 -19
- package/src/index.js +9 -31
- package/src/services/AIService.js +3 -3
- package/src/services/BasedService.js +1 -0
- package/src/services/CollabService.js +491 -0
- package/src/services/CoreService.js +715 -110
- package/src/services/SocketService.js +227 -59
- package/src/services/index.js +6 -13
- package/src/state/RootStateManager.js +71 -0
- package/src/state/rootEventBus.js +48 -0
- package/src/utils/CollabClient.js +161 -0
- package/src/utils/TokenManager.js +68 -30
- package/src/utils/jsonDiff.js +109 -0
- package/src/utils/services.js +140 -88
- package/src/utils/symstoryClient.js +5 -5
- package/dist/cjs/services/SocketIOService.js +0 -307
- package/dist/esm/services/SocketIOService.js +0 -470
- package/dist/node/services/SocketIOService.js +0 -278
- package/src/services/SocketIOService.js +0 -334
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// src/state/RootStateManager.js
|
|
2
|
+
import * as utils from "@domql/utils";
|
|
3
|
+
|
|
4
|
+
// src/state/rootEventBus.js
|
|
5
|
+
var getGlobalBus = () => {
|
|
6
|
+
if (globalThis.__SMBLS_ROOT_BUS__) {
|
|
7
|
+
return globalThis.__SMBLS_ROOT_BUS__;
|
|
8
|
+
}
|
|
9
|
+
const events = {};
|
|
10
|
+
const bus = {
|
|
11
|
+
on(event, handler) {
|
|
12
|
+
(events[event] || (events[event] = [])).push(handler);
|
|
13
|
+
},
|
|
14
|
+
off(event, handler) {
|
|
15
|
+
const list = events[event];
|
|
16
|
+
if (!list) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const idx = list.indexOf(handler);
|
|
20
|
+
if (idx !== -1) {
|
|
21
|
+
list.splice(idx, 1);
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
emit(event, payload) {
|
|
25
|
+
const list = events[event];
|
|
26
|
+
if (!list || !list.length) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
list.slice().forEach((fn) => {
|
|
30
|
+
try {
|
|
31
|
+
fn(payload);
|
|
32
|
+
} catch (err) {
|
|
33
|
+
console.error("[rootBus] handler error for", event, err);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(bus, "_listeners", {
|
|
39
|
+
value: events,
|
|
40
|
+
enumerable: false
|
|
41
|
+
});
|
|
42
|
+
globalThis.__SMBLS_ROOT_BUS__ = bus;
|
|
43
|
+
return bus;
|
|
44
|
+
};
|
|
45
|
+
var rootBus = getGlobalBus();
|
|
46
|
+
|
|
47
|
+
// src/state/RootStateManager.js
|
|
48
|
+
var { isFunction } = utils.default || utils;
|
|
49
|
+
var RootStateManager = class {
|
|
50
|
+
constructor(rootState) {
|
|
51
|
+
this._rootState = rootState;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Apply change tuples to the root state using the built-in setPathCollection
|
|
55
|
+
* of Symbo.ls APP state tree.
|
|
56
|
+
*
|
|
57
|
+
* @param {Array} changes – eg. ['update', ['foo'], 'bar']
|
|
58
|
+
* @param {Object} opts – forwarded to setPathCollection
|
|
59
|
+
*/
|
|
60
|
+
applyChanges(changes = [], opts = {}) {
|
|
61
|
+
if (!this._rootState || !isFunction(this._rootState.setPathCollection)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const result = this._rootState.setPathCollection(changes, {
|
|
65
|
+
preventUpdate: true,
|
|
66
|
+
...opts
|
|
67
|
+
});
|
|
68
|
+
try {
|
|
69
|
+
const changedKeys = /* @__PURE__ */ new Set();
|
|
70
|
+
changes.forEach((tuple) => {
|
|
71
|
+
const [, path = []] = tuple;
|
|
72
|
+
if (!Array.isArray(path) || !path.length) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (path[0] === "components" && typeof path[1] === "string") {
|
|
76
|
+
changedKeys.add(path[1]);
|
|
77
|
+
}
|
|
78
|
+
if (path[0] === "schema" && path[1] === "components" && typeof path[2] === "string") {
|
|
79
|
+
changedKeys.add(path[2]);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
if (changedKeys.size) {
|
|
83
|
+
console.log("emit components:changed", [...changedKeys]);
|
|
84
|
+
rootBus.emit("components:changed", [...changedKeys]);
|
|
85
|
+
}
|
|
86
|
+
} catch (err) {
|
|
87
|
+
console.error("[RootStateManager] emit components:changed failed", err);
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
setVersion(v) {
|
|
92
|
+
if (this._rootState) {
|
|
93
|
+
this._rootState.version = v;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
get root() {
|
|
97
|
+
return this._rootState;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
export {
|
|
101
|
+
RootStateManager
|
|
102
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// src/state/rootEventBus.js
|
|
2
|
+
var getGlobalBus = () => {
|
|
3
|
+
if (globalThis.__SMBLS_ROOT_BUS__) {
|
|
4
|
+
return globalThis.__SMBLS_ROOT_BUS__;
|
|
5
|
+
}
|
|
6
|
+
const events = {};
|
|
7
|
+
const bus = {
|
|
8
|
+
on(event, handler) {
|
|
9
|
+
(events[event] || (events[event] = [])).push(handler);
|
|
10
|
+
},
|
|
11
|
+
off(event, handler) {
|
|
12
|
+
const list = events[event];
|
|
13
|
+
if (!list) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const idx = list.indexOf(handler);
|
|
17
|
+
if (idx !== -1) {
|
|
18
|
+
list.splice(idx, 1);
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
emit(event, payload) {
|
|
22
|
+
const list = events[event];
|
|
23
|
+
if (!list || !list.length) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
list.slice().forEach((fn) => {
|
|
27
|
+
try {
|
|
28
|
+
fn(payload);
|
|
29
|
+
} catch (err) {
|
|
30
|
+
console.error("[rootBus] handler error for", event, err);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
Object.defineProperty(bus, "_listeners", {
|
|
36
|
+
value: events,
|
|
37
|
+
enumerable: false
|
|
38
|
+
});
|
|
39
|
+
globalThis.__SMBLS_ROOT_BUS__ = bus;
|
|
40
|
+
return bus;
|
|
41
|
+
};
|
|
42
|
+
var rootBus = getGlobalBus();
|
|
43
|
+
var rootEventBus_default = rootBus;
|
|
44
|
+
export {
|
|
45
|
+
rootEventBus_default as default,
|
|
46
|
+
rootBus
|
|
47
|
+
};
|