topsyde-utils 1.0.121 → 1.0.123
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/client/rxjs/rxjs.d.ts +1 -3
- package/dist/client/rxjs/rxjs.js +2 -21
- package/dist/client/rxjs/rxjs.js.map +1 -1
- package/dist/client/rxjs/useRxjs.js +5 -0
- package/dist/client/rxjs/useRxjs.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/server/bun/websocket/Websocket.d.ts +1 -0
- package/dist/server/bun/websocket/Websocket.js +10 -10
- package/dist/server/bun/websocket/Websocket.js.map +1 -1
- package/dist/server/bun/websocket/websocket.types.d.ts +13 -0
- package/package.json +1 -1
@@ -1,6 +1,6 @@
|
|
1
1
|
import { Subject, Subscription } from "rxjs";
|
2
2
|
import { Singleton } from "../..";
|
3
|
-
declare enum E_SUBJET_TYPE {
|
3
|
+
export declare enum E_SUBJET_TYPE {
|
4
4
|
SUBJECT = "subject",
|
5
5
|
ASYNC_SUBJECT = "asyncSubject",
|
6
6
|
BEHAVIOR_SUBJECT = "behaviorSubject",
|
@@ -15,7 +15,6 @@ export type RxjsNamespaces<T extends string> = T;
|
|
15
15
|
export declare class Rxjs<T extends string> extends Singleton {
|
16
16
|
namespaces: Map<string, RxjsInstance>;
|
17
17
|
create(namespace: string, subjectType?: E_SUBJET_TYPE): void;
|
18
|
-
registerNamespaces(): void;
|
19
18
|
next<U>(namespace: RxjsNamespaces<T>, rxjsPayload: I_RxjsPayload<U>): void;
|
20
19
|
subscribe(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<T>) => any): Subscription;
|
21
20
|
clear(namespace: RxjsNamespaces<T>): void;
|
@@ -31,4 +30,3 @@ export declare class RxjsInstance {
|
|
31
30
|
subscribe<U>(callback: (payload: I_RxjsPayload<U>) => void): Subscription;
|
32
31
|
unsubscribe(): void;
|
33
32
|
}
|
34
|
-
export {};
|
package/dist/client/rxjs/rxjs.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { AsyncSubject, BehaviorSubject, ReplaySubject, Subject, Subscription } from "rxjs";
|
2
2
|
import { Lib } from "../../utils";
|
3
3
|
import { Singleton } from "../..";
|
4
|
-
var E_SUBJET_TYPE;
|
4
|
+
export var E_SUBJET_TYPE;
|
5
5
|
(function (E_SUBJET_TYPE) {
|
6
6
|
E_SUBJET_TYPE["SUBJECT"] = "subject";
|
7
7
|
E_SUBJET_TYPE["ASYNC_SUBJECT"] = "asyncSubject";
|
@@ -14,30 +14,11 @@ export class Rxjs extends Singleton {
|
|
14
14
|
this.namespaces = new Map();
|
15
15
|
}
|
16
16
|
create(namespace, subjectType = E_SUBJET_TYPE.SUBJECT) {
|
17
|
+
console.log("Creating namespace", namespace, subjectType);
|
17
18
|
if (!this.namespaces.has(namespace)) {
|
18
19
|
this.namespaces.set(namespace, new RxjsInstance(subjectType));
|
19
20
|
}
|
20
21
|
}
|
21
|
-
registerNamespaces() {
|
22
|
-
// register every rxjs namespace as needed
|
23
|
-
this.create("system", E_SUBJET_TYPE.BEHAVIOR_SUBJECT);
|
24
|
-
this.create("amplitude");
|
25
|
-
this.create("modal");
|
26
|
-
this.create("utils");
|
27
|
-
this.create("toast");
|
28
|
-
this.create("selectBox");
|
29
|
-
this.create("table");
|
30
|
-
this.create("integrations", E_SUBJET_TYPE.BEHAVIOR_SUBJECT);
|
31
|
-
this.create("cell", E_SUBJET_TYPE.BEHAVIOR_SUBJECT);
|
32
|
-
this.create("appcenter", E_SUBJET_TYPE.BEHAVIOR_SUBJECT);
|
33
|
-
this.create("customerCard");
|
34
|
-
this.create("statham");
|
35
|
-
this.create("pusher");
|
36
|
-
this.create("search");
|
37
|
-
this.create("views");
|
38
|
-
this.create("component_state", E_SUBJET_TYPE.REPLAY_SUBJECT);
|
39
|
-
this.create("marketplace");
|
40
|
-
}
|
41
22
|
next(namespace, rxjsPayload) {
|
42
23
|
this.namespaces.get(namespace)?.next(rxjsPayload);
|
43
24
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rxjs.js","sourceRoot":"","sources":["../../../src/client/rxjs/rxjs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAC3F,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,
|
1
|
+
{"version":3,"file":"rxjs.js","sourceRoot":"","sources":["../../../src/client/rxjs/rxjs.ts"],"names":[],"mappings":"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"}
|
@@ -4,6 +4,11 @@ import { Guards, Lib } from "../../utils";
|
|
4
4
|
export const useRxjs = (_namespace, actions, options) => {
|
5
5
|
const subs = ref(new Map());
|
6
6
|
const _actions = ref(actions);
|
7
|
+
const namespaces = ref(Guards.IsArray(_namespace) ? _namespace : [_namespace]);
|
8
|
+
namespaces.value.forEach((ns) => {
|
9
|
+
console.log("Creating namespace", ns);
|
10
|
+
Rxjs.GetInstance().create(ns);
|
11
|
+
});
|
7
12
|
function _getAction(cta, ns) {
|
8
13
|
if (Guards.IsArray(_namespace))
|
9
14
|
return _actions.value?.[ns]?.[cta];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useRxjs.js","sourceRoot":"","sources":["../../../src/client/rxjs/useRxjs.ts"],"names":[],"mappings":"AACA,OAAO,
|
1
|
+
{"version":3,"file":"useRxjs.js","sourceRoot":"","sources":["../../../src/client/rxjs/useRxjs.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
@@ -45,7 +45,7 @@ export { RESPONSE_INIT, RESPONSE_METHOD_OPTIONS } from "./application";
|
|
45
45
|
export { DEFAULT_FALSE_RESPONSE, LOG_COLORS, LOG_ICONS } from "./consts";
|
46
46
|
export { ClassConstructor, NonNullableType, ObjectKeys, KVObj, I_ApplicationResponse } from "./types";
|
47
47
|
export { E_IS, E_ENVIRONMENTS } from "./enums";
|
48
|
-
export { I_RxjsPayload, RxjsNamespaces } from "./client/rxjs/rxjs";
|
48
|
+
export { E_SUBJET_TYPE, I_RxjsPayload, RxjsNamespaces } from "./client/rxjs/rxjs";
|
49
49
|
export { RxjsDataType } from "./client/rxjs/useRxjs";
|
50
50
|
export { ControllerResponse, ControllerAction, ControllerMap, ControllerOptions } from "./server/controller";
|
51
51
|
export { Routes } from "./server/bun/router/routes";
|
package/dist/index.js
CHANGED
@@ -48,5 +48,6 @@ export { ERROR_CODE, HTTP_ERROR_CODE, WS_ERROR_CODE } from "./errors";
|
|
48
48
|
export { RESPONSE_INIT, RESPONSE_METHOD_OPTIONS } from "./application";
|
49
49
|
export { DEFAULT_FALSE_RESPONSE, LOG_COLORS, LOG_ICONS } from "./consts";
|
50
50
|
export { E_IS, E_ENVIRONMENTS } from "./enums";
|
51
|
+
export { E_SUBJET_TYPE } from "./client/rxjs/rxjs";
|
51
52
|
export { E_WebsocketMessageType, E_WebsocketMessagePriority } from "./server/bun/websocket/websocket.enums";
|
52
53
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,iCAAiC;AAEjC,qBAAqB;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0CAA0C,CAAC;AACzD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErD,sDAAsD;AACtD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEzE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,iCAAiC;AAEjC,qBAAqB;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0CAA0C,CAAC;AACzD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErD,sDAAsD;AACtD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEzE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAiC,MAAM,oBAAoB,CAAC;AAKlF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC"}
|
@@ -21,6 +21,7 @@ export default class Websocket extends Singleton {
|
|
21
21
|
protected _clientClass: typeof Client;
|
22
22
|
protected _ws_interface?: I_WebsocketInterface;
|
23
23
|
protected _options: WebsocketConstructorOptions;
|
24
|
+
protected _ws_interface_setup: Partial<WebSocketHandler<WebsocketEntityData>>;
|
24
25
|
protected constructor(options?: I_WebsocketConstructor);
|
25
26
|
protected set server(value: Server);
|
26
27
|
get server(): Server;
|
@@ -11,18 +11,16 @@ export default class Websocket extends Singleton {
|
|
11
11
|
this.clientMessageReceived = (ws, message) => {
|
12
12
|
if (Websocket.Heartbeat(ws, message))
|
13
13
|
return;
|
14
|
-
|
15
|
-
|
16
|
-
return setup.message(ws, message);
|
14
|
+
if (this._ws_interface_setup.message)
|
15
|
+
return this._ws_interface_setup.message(ws, message);
|
17
16
|
ws.send("This is the message from the server: " + message);
|
18
17
|
Websocket.BraodcastAll({ type: "client.message.received", content: { message } });
|
19
18
|
};
|
20
19
|
this.clientConnected = (ws) => {
|
21
20
|
if (this._options.debug)
|
22
21
|
Lib.Log("Client connected", ws.data);
|
23
|
-
|
24
|
-
|
25
|
-
return setup.open(ws);
|
22
|
+
if (this._ws_interface_setup.open)
|
23
|
+
this._ws_interface_setup.open(ws);
|
26
24
|
const global = this._channels.get("global");
|
27
25
|
if (!global)
|
28
26
|
throw new Error("Global channel not found");
|
@@ -30,13 +28,14 @@ export default class Websocket extends Singleton {
|
|
30
28
|
this._clients.set(client.id, client);
|
31
29
|
client.send({ type: E_WebsocketMessageType.CLIENT_CONNECTED, content: { message: "Welcome to the server", client: client.whoami() } });
|
32
30
|
global.addMember(client);
|
31
|
+
if (this._ws_interface_setup.open)
|
32
|
+
this._ws_interface_setup.open(ws);
|
33
33
|
};
|
34
34
|
this.clientDisconnected = (ws, code, reason) => {
|
35
35
|
if (this._options.debug)
|
36
36
|
Lib.Log("Client disconnected", ws.data);
|
37
|
-
|
38
|
-
|
39
|
-
return setup.close(ws, code, reason);
|
37
|
+
if (this._ws_interface_setup.close)
|
38
|
+
this._ws_interface_setup.close(ws, code, reason);
|
40
39
|
const client = this._clients.get(ws.data.id);
|
41
40
|
if (!client)
|
42
41
|
return;
|
@@ -59,6 +58,7 @@ export default class Websocket extends Singleton {
|
|
59
58
|
this._channelClass = options?.channelClass ?? Channel.GetChannelType(options?.channels);
|
60
59
|
this._options = options?.options ?? { debug: false };
|
61
60
|
this.createChannel("global", "Global", 1000);
|
61
|
+
this._ws_interface_setup = this._ws_interface?.setup(this._channels, this._clients) ?? {};
|
62
62
|
}
|
63
63
|
set server(value) {
|
64
64
|
this._server = value;
|
@@ -158,7 +158,7 @@ export default class Websocket extends Singleton {
|
|
158
158
|
static GenerateMessage() {
|
159
159
|
const msg = {
|
160
160
|
type: "",
|
161
|
-
content: {}
|
161
|
+
content: {},
|
162
162
|
};
|
163
163
|
return msg;
|
164
164
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Websocket.js","sourceRoot":"","sources":["../../../../src/server/bun/websocket/Websocket.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,MAAM,MAAM,UAAU,CAAC;AAW9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAc3D,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,SAAS;
|
1
|
+
{"version":3,"file":"Websocket.js","sourceRoot":"","sources":["../../../../src/server/bun/websocket/Websocket.ts"],"names":[],"mappings":"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"}
|
@@ -130,6 +130,19 @@ export interface I_WebsocketChannel<T extends Websocket = Websocket> extends I_W
|
|
130
130
|
getName(): string;
|
131
131
|
canAddMember(): boolean;
|
132
132
|
}
|
133
|
+
/**
|
134
|
+
* Interface for implementing custom WebSocket behavior.
|
135
|
+
*
|
136
|
+
* @interface I_WebsocketInterface
|
137
|
+
*
|
138
|
+
* @property {Function} setup - Initializes the WebSocket handler with channels and clients
|
139
|
+
*
|
140
|
+
* The interface supports three optional handler methods:
|
141
|
+
*
|
142
|
+
* - `message`: Custom message handler that replaces the default handler
|
143
|
+
* - `open`: Connection handler that runs after the default open handler
|
144
|
+
* - `close`: Disconnection handler that runs before the default close handler
|
145
|
+
*/
|
133
146
|
export interface I_WebsocketInterface {
|
134
147
|
setup: (channels: WebsocketChannel, clients: WebsocketClients) => Partial<WebSocketHandler<WebsocketEntityData>>;
|
135
148
|
}
|