@symbo.ls/sdk 3.1.1 → 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.
Files changed (83) hide show
  1. package/README.md +174 -13
  2. package/dist/cjs/config/environment.js +32 -42
  3. package/dist/cjs/index.js +31 -24
  4. package/dist/cjs/services/AIService.js +3 -3
  5. package/dist/cjs/services/AuthService.js +44 -3
  6. package/dist/cjs/services/BasedService.js +530 -24
  7. package/dist/cjs/services/CollabService.js +420 -0
  8. package/dist/cjs/services/CoreService.js +2295 -0
  9. package/dist/cjs/services/SocketService.js +207 -59
  10. package/dist/cjs/services/SymstoryService.js +135 -49
  11. package/dist/cjs/services/index.js +8 -16
  12. package/dist/cjs/state/RootStateManager.js +86 -0
  13. package/dist/cjs/state/rootEventBus.js +65 -0
  14. package/dist/cjs/utils/CollabClient.js +157 -0
  15. package/dist/cjs/utils/TokenManager.js +409 -0
  16. package/dist/cjs/utils/basedQuerys.js +120 -0
  17. package/dist/cjs/utils/jsonDiff.js +103 -0
  18. package/dist/cjs/utils/permission.js +4 -4
  19. package/dist/cjs/utils/services.js +133 -69
  20. package/dist/cjs/utils/symstoryClient.js +33 -2
  21. package/dist/esm/config/environment.js +32 -42
  22. package/dist/esm/index.js +20586 -11525
  23. package/dist/esm/services/AIService.js +3 -3
  24. package/dist/esm/services/AuthService.js +48 -7
  25. package/dist/esm/services/BasedService.js +676 -65
  26. package/dist/esm/services/CollabService.js +18028 -0
  27. package/dist/esm/services/CoreService.js +2827 -0
  28. package/dist/esm/services/SocketService.js +323 -58
  29. package/dist/esm/services/SymstoryService.js +287 -111
  30. package/dist/esm/services/index.js +20456 -11470
  31. package/dist/esm/state/RootStateManager.js +102 -0
  32. package/dist/esm/state/rootEventBus.js +47 -0
  33. package/dist/esm/utils/CollabClient.js +17483 -0
  34. package/dist/esm/utils/TokenManager.js +395 -0
  35. package/dist/esm/utils/basedQuerys.js +120 -0
  36. package/dist/esm/utils/jsonDiff.js +6096 -0
  37. package/dist/esm/utils/permission.js +4 -4
  38. package/dist/esm/utils/services.js +133 -69
  39. package/dist/esm/utils/symstoryClient.js +63 -43
  40. package/dist/esm/utils/validation.js +89 -19
  41. package/dist/node/config/environment.js +32 -42
  42. package/dist/node/index.js +37 -28
  43. package/dist/node/services/AIService.js +3 -3
  44. package/dist/node/services/AuthService.js +44 -3
  45. package/dist/node/services/BasedService.js +531 -25
  46. package/dist/node/services/CollabService.js +401 -0
  47. package/dist/node/services/CoreService.js +2266 -0
  48. package/dist/node/services/SocketService.js +197 -59
  49. package/dist/node/services/SymstoryService.js +135 -49
  50. package/dist/node/services/index.js +8 -16
  51. package/dist/node/state/RootStateManager.js +57 -0
  52. package/dist/node/state/rootEventBus.js +46 -0
  53. package/dist/node/utils/CollabClient.js +128 -0
  54. package/dist/node/utils/TokenManager.js +390 -0
  55. package/dist/node/utils/basedQuerys.js +120 -0
  56. package/dist/node/utils/jsonDiff.js +74 -0
  57. package/dist/node/utils/permission.js +4 -4
  58. package/dist/node/utils/services.js +133 -69
  59. package/dist/node/utils/symstoryClient.js +33 -2
  60. package/package.json +23 -14
  61. package/src/config/environment.js +33 -42
  62. package/src/index.js +45 -28
  63. package/src/services/AIService.js +3 -3
  64. package/src/services/AuthService.js +52 -3
  65. package/src/services/BasedService.js +603 -23
  66. package/src/services/CollabService.js +491 -0
  67. package/src/services/CoreService.js +2548 -0
  68. package/src/services/SocketService.js +227 -59
  69. package/src/services/SymstoryService.js +150 -64
  70. package/src/services/index.js +7 -14
  71. package/src/state/RootStateManager.js +71 -0
  72. package/src/state/rootEventBus.js +48 -0
  73. package/src/utils/CollabClient.js +161 -0
  74. package/src/utils/TokenManager.js +462 -0
  75. package/src/utils/basedQuerys.js +123 -0
  76. package/src/utils/jsonDiff.js +109 -0
  77. package/src/utils/permission.js +4 -4
  78. package/src/utils/services.js +144 -69
  79. package/src/utils/symstoryClient.js +36 -2
  80. package/dist/cjs/services/SocketIOService.js +0 -309
  81. package/dist/esm/services/SocketIOService.js +0 -467
  82. package/dist/node/services/SocketIOService.js +0 -280
  83. package/src/services/SocketIOService.js +0 -356
@@ -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
+ };