topsyde-utils 1.0.183 → 1.0.184
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/utils/Rxjs.d.ts +1 -1
- package/dist/utils/Rxjs.js.map +1 -1
- package/package.json +1 -1
- package/src/utils/Rxjs.ts +2 -2
package/dist/utils/Rxjs.d.ts
CHANGED
@@ -17,7 +17,7 @@ export declare class Rxjs<T extends string> extends Singleton {
|
|
17
17
|
create(namespace: string, subjectType?: E_SUBJET_TYPE): void;
|
18
18
|
has(namespace: string): boolean;
|
19
19
|
next<U>(namespace: RxjsNamespaces<T>, rxjsPayload: I_RxjsPayload<U>): void;
|
20
|
-
subscribe(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<
|
20
|
+
subscribe<U>(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<U>) => any): Subscription;
|
21
21
|
clear(namespace: RxjsNamespaces<T>): void;
|
22
22
|
}
|
23
23
|
export declare class RxjsInstance {
|
package/dist/utils/Rxjs.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Rxjs.js","sourceRoot":"","sources":["../../src/utils/Rxjs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAC3F,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,GAAG,MAAM,OAAO,CAAC;AAExB,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACxB,oCAAmB,CAAA;IACnB,+CAA8B,CAAA;IAC9B,qDAAoC,CAAA;IACpC,iDAAgC,CAAA;AACjC,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB;AAUD,MAAM,OAAO,IAAuB,SAAQ,SAAS;IAArD;;QACQ,eAAU,GAAG,IAAI,GAAG,EAAwB,CAAC;IA4BrD,CAAC;IA1BA,MAAM,CAAC,SAAiB,EAAE,cAA6B,aAAa,CAAC,OAAO;QAC3E,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/D,CAAC;IACF,CAAC;IAED,GAAG,CAAC,SAAiB;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,CAAI,SAA4B,EAAE,WAA6B;QAClE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,SAAS,
|
1
|
+
{"version":3,"file":"Rxjs.js","sourceRoot":"","sources":["../../src/utils/Rxjs.ts"],"names":[],"mappings":"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","sourcesContent":["import { AsyncSubject, BehaviorSubject, ReplaySubject, Subject, Subscription } from \"rxjs\";\nimport Singleton from \"../singleton\";\nimport Lib from \"./Lib\";\n\nexport enum E_SUBJET_TYPE {\n\tSUBJECT = \"subject\",\n\tASYNC_SUBJECT = \"asyncSubject\",\n\tBEHAVIOR_SUBJECT = \"behaviorSubject\",\n\tREPLAY_SUBJECT = \"replaySubject\",\n}\n\nexport type I_RxjsPayload<T> = {\n\tcta: string;\n\tdata: T;\n\tsource?: string;\n};\n\nexport type RxjsNamespaces<T extends string> = T;\n\nexport class Rxjs<T extends string> extends Singleton {\n\tpublic namespaces = new Map<string, RxjsInstance>();\n\n\tcreate(namespace: string, subjectType: E_SUBJET_TYPE = E_SUBJET_TYPE.SUBJECT) {\n\t\tconsole.log(\"Creating namespace\", namespace, subjectType);\n\t\tif (!this.namespaces.has(namespace)) {\n\t\t\tthis.namespaces.set(namespace, new RxjsInstance(subjectType));\n\t\t}\n\t}\n\n\thas(namespace: string) {\n\t\treturn this.namespaces.has(namespace);\n\t}\n\n\tnext<U>(namespace: RxjsNamespaces<T>, rxjsPayload: I_RxjsPayload<U>): void {\n\t\tthis.namespaces.get(namespace)?.next(rxjsPayload);\n\t}\n\n\tsubscribe<U>(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<U>) => any): Subscription {\n\t\tconst instance = this.namespaces.get(namespace);\n\t\tif (!instance) {\n\t\t\tthrow new Error(`Namespace ${namespace} not found`);\n\t\t}\n\t\treturn instance.subscribe((payload: I_RxjsPayload<U>) => listener(payload));\n\t}\n\n\tclear(namespace: RxjsNamespaces<T>) {\n\t\tthis.namespaces.get(namespace)?.clear();\n\t}\n}\n\nexport class RxjsInstance {\n\tsubscriptions: Subscription;\n\tsubject: Subject<any>;\n\n\tconstructor(subjectType: E_SUBJET_TYPE) {\n\t\tthis.subscriptions = new Subscription();\n\t\tswitch (subjectType) {\n\t\t\tcase E_SUBJET_TYPE.SUBJECT:\n\t\t\t\tthis.subject = new Subject();\n\t\t\t\tbreak;\n\t\t\tcase E_SUBJET_TYPE.ASYNC_SUBJECT:\n\t\t\t\tthis.subject = new AsyncSubject();\n\t\t\t\tbreak;\n\t\t\tcase E_SUBJET_TYPE.BEHAVIOR_SUBJECT:\n\t\t\t\tthis.subject = new BehaviorSubject(null);\n\t\t\t\tbreak;\n\t\t\tcase E_SUBJET_TYPE.REPLAY_SUBJECT:\n\t\t\t\tthis.subject = new ReplaySubject();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.subject = new Subject();\n\t\t}\n\t}\n\n\tnext(data: any) {\n\t\tthis.subject.next(data);\n\t}\n\n\tasObservable() {\n\t\treturn this.subject.asObservable();\n\t}\n\n\tclear() {\n\t\tif (this.subject instanceof ReplaySubject) {\n\t\t\t// Get the current subscribers\n\t\t\tconst currentSubscribers = (this.subject as any)._subscribers;\n\n\t\t\t// Create a new ReplaySubject with same buffer config\n\t\t\tconst bufferSize = (this.subject as any)._bufferSize;\n\t\t\tconst windowTime = (this.subject as any)._windowTime;\n\t\t\tconst newSubject = new ReplaySubject(bufferSize, windowTime);\n\n\t\t\t// Transfer subscribers to new subject\n\t\t\tnewSubject.subscribe(currentSubscribers);\n\n\t\t\t// Replace the old subject\n\t\t\tthis.subject = newSubject;\n\t\t}\n\t}\n\n\tset add(subscription: Subscription) {\n\t\tthis.subscriptions.add(subscription);\n\t}\n\n\tsubscribe<U>(callback: (payload: I_RxjsPayload<U>) => void): Subscription {\n\t\tif (typeof callback !== \"function\") {\n\t\t\tthrow \"Failed to subscribe. Please provide a callback function\";\n\t\t}\n\n\t\tconst subscriber = this.asObservable().subscribe((payload: I_RxjsPayload<U>) => {\n\t\t\tif (Lib.IsNumpty(payload) || !payload.hasOwnProperty(\"cta\")) return;\n\t\t\tcallback(payload);\n\t\t});\n\n\t\tthis.subscriptions.add(subscriber);\n\t\treturn subscriber;\n\t}\n\n\tunsubscribe() {\n\t\tthis.subscriptions.unsubscribe();\n\t}\n}\n"]}
|
package/package.json
CHANGED
package/src/utils/Rxjs.ts
CHANGED
@@ -35,12 +35,12 @@ export class Rxjs<T extends string> extends Singleton {
|
|
35
35
|
this.namespaces.get(namespace)?.next(rxjsPayload);
|
36
36
|
}
|
37
37
|
|
38
|
-
subscribe(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<
|
38
|
+
subscribe<U>(namespace: RxjsNamespaces<T>, listener: (payload: I_RxjsPayload<U>) => any): Subscription {
|
39
39
|
const instance = this.namespaces.get(namespace);
|
40
40
|
if (!instance) {
|
41
41
|
throw new Error(`Namespace ${namespace} not found`);
|
42
42
|
}
|
43
|
-
return instance.subscribe((payload: I_RxjsPayload<
|
43
|
+
return instance.subscribe((payload: I_RxjsPayload<U>) => listener(payload));
|
44
44
|
}
|
45
45
|
|
46
46
|
clear(namespace: RxjsNamespaces<T>) {
|