@siggn/core 0.0.3 → 0.0.5

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 CHANGED
@@ -100,6 +100,66 @@ siggn.publish({ type: 'user_deleted', userId: '123' });
100
100
  auditService.unsubscribe();
101
101
  ```
102
102
 
103
+ ### Subscribing to all events
104
+
105
+ If you need to listen to every message that passes through the bus, regardless of its type, you can
106
+ use `subscribeAll`. This is useful for cross-cutting concerns like logging or debugging.
107
+
108
+ ```typescript
109
+ const logger = siggn.make('logger-service');
110
+
111
+ logger.subscribeAll((msg) => {
112
+ console.log(`[Logger] Received event of type: ${msg.type}`);
113
+ });
114
+
115
+ siggn.publish({ type: 'user_created', userId: '789', name: 'Peter Pan' });
116
+ // Output: [Logger] Received event of type: user_created
117
+
118
+ siggn.publish({ type: 'user_deleted', userId: '123' });
119
+ // Output: [Logger] Received event of type: user_deleted
120
+
121
+ // Unsubscribe from all logger-service events
122
+ logger.unsubscribe();
123
+ ```
124
+
125
+ ### Extending message types with `createChild`
126
+
127
+ The `createChild` method allows you to create a new, independent `Siggn` instance that inherits the
128
+ message types of its parent. This is useful for creating specialized message buses that extend a
129
+ base set of events without affecting the parent bus.
130
+
131
+ ```typescript
132
+ // Continuing with the previous `Message` type...
133
+ const baseSiggn = new Siggn<Message>();
134
+
135
+ // 1. Define a new set of messages for a specialized module
136
+ type AdminMessage = { type: 'admin_login'; adminId: string };
137
+
138
+ // 2. Create a child bus that understands both `Message` and `AdminMessage`
139
+ const adminSiggn = baseSiggn.createChild<AdminMessage>();
140
+
141
+ // 3. Subscribe to events on the child bus
142
+ adminSiggn.subscribe('audit-log', 'user_created', (msg) => {
143
+ console.log(`[Admin Audit] User created: ${msg.name}`);
144
+ });
145
+
146
+ adminSiggn.subscribe('auth-service', 'admin_login', (msg) => {
147
+ console.log(`[Admin Auth] Admin logged in: ${msg.adminId}`);
148
+ });
149
+
150
+ // 4. Publish events on the child bus
151
+ adminSiggn.publish({ type: 'user_created', userId: 'abc', name: 'Alice' });
152
+ // Output: [Admin Audit] User created: Alice
153
+
154
+ adminSiggn.publish({ type: 'admin_login', adminId: 'xyz' });
155
+ // Output: [Admin Auth] Admin logged in: xyz
156
+
157
+ // Note: The parent and child buses are independent.
158
+ // Publishing on the parent does not affect the child's subscribers.
159
+ baseSiggn.publish({ type: 'user_created', userId: 'def', name: 'Bob' });
160
+ // No output, because the subscription is on `adminSiggn`.
161
+ ```
162
+
103
163
  ## API
104
164
 
105
165
  ### `new Siggn<T>()`
@@ -114,19 +174,30 @@ Publishes a message to all relevant subscribers.
114
174
 
115
175
  Subscribes a callback to a specific message type with a unique subscriber ID.
116
176
 
177
+ ### `subscribeAll(id, callback)`
178
+
179
+ Subscribes a callback to all message types with a unique subscriber ID. The callback will receive
180
+ every message published on the bus.
181
+
117
182
  ### `unsubscribe(id)`
118
183
 
119
184
  Removes all subscriptions associated with a specific subscriber ID.
120
185
 
121
186
  ### `make(id)`
122
187
 
123
- Returns a helper object with `subscribe`, `subscribeMany`, and `unsubscribe` methods pre-bound to
124
- the provided ID. This is useful for encapsulating subscription logic within a component or service.
188
+ Returns a helper object with `subscribe`, `subscribeMany`, `subscribeAll`, and `unsubscribe` methods
189
+ pre-bound to the provided ID. This is useful for encapsulating subscription logic within a component
190
+ or service.
125
191
 
126
192
  ### `subscribeMany(id, setup)`
127
193
 
128
194
  A convenience method to subscribe to multiple message types for a single ID.
129
195
 
196
+ ### `createChild<C>()`
197
+
198
+ Creates a new, independent `Siggn` instance whose message types are a union of the parent's types
199
+ and the new child-specific types `C`.
200
+
130
201
  ## License
131
202
 
132
203
  This project is licensed under the [MIT License](LICENSE).
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class r{nextId=0;subscriptions;subscribeAllSubscriptions=[];constructor(){this.subscriptions=new Map}createClone(){return new r}makeId(i){return i??`sub_${(this.nextId++).toString(36)}`}make(i){return{subscribe:(s,t)=>{this.subscribe(i,s,t)},unsubscribe:()=>{this.unsubscribe(i)},subscribeMany:s=>{this.subscribeMany(i,s)},subscribeAll:s=>{this.subscribeAll(i,s)}}}subscribeMany(i,s){s((t,b)=>this.subscribe(i,t,b))}subscribe(i,s,t){this.subscriptions.has(s)||this.subscriptions.set(s,[]),this.subscriptions.get(s)?.push({id:i,callback:t})}subscribeAll(i,s){this.subscribeAllSubscriptions.push({id:i,callback:s})}publish(i){this.subscribeAllSubscriptions.forEach(s=>{s.callback(i)}),this.subscriptions.has(i.type)&&this.subscriptions.get(i.type)?.forEach(s=>{s.callback(i)})}unsubscribe(i){this.subscribeAllSubscriptions=this.subscribeAllSubscriptions.filter(s=>s.id!==i);for(const[s,t]of this.subscriptions)this.subscriptions.set(s,t.filter(b=>b.id!==i))}}exports.Siggn=r;
2
+ //# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/siggn.ts"],"sourcesContent":["import type { Msg, Subscription, SiggnId } from './types.js';\n\nexport class Siggn<T extends Msg> {\n private nextId = 0;\n private subscriptions: Map<T['type'], Array<Subscription<T, any>>>;\n private subscribeAllSubscriptions: Array<Subscription<T, any>> = [];\n\n constructor() {\n this.subscriptions = new Map();\n }\n\n createClone<C extends Msg>() {\n return new Siggn<C | T>();\n }\n\n makeId(id?: string): SiggnId {\n return id ?? `sub_${(this.nextId++).toString(36)}`;\n }\n\n make(id: SiggnId): {\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void;\n unsubscribe: () => void;\n subscribeMany: (\n setup: (\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void,\n ) => void,\n ) => void;\n subscribeAll: (callback: (msg: T) => void) => void;\n } {\n return {\n subscribe: (type, callback) => {\n this.subscribe(id, type, callback);\n },\n unsubscribe: () => {\n this.unsubscribe(id);\n },\n subscribeMany: (setup) => {\n this.subscribeMany(id, setup);\n },\n subscribeAll: (callback) => {\n this.subscribeAll(id, callback);\n },\n };\n }\n\n subscribeMany(\n id: SiggnId,\n setup: (\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void,\n ) => void,\n ) {\n setup((type, callback) => this.subscribe(id, type, callback));\n }\n\n subscribe<K extends T['type']>(\n id: SiggnId,\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) {\n if (!this.subscriptions.has(type)) {\n this.subscriptions.set(type, []);\n }\n\n this.subscriptions.get(type)?.push({ id, callback });\n }\n\n subscribeAll(id: SiggnId, callback: (msg: T) => void) {\n this.subscribeAllSubscriptions.push({ id, callback });\n }\n\n publish(msg: T) {\n this.subscribeAllSubscriptions.forEach((sub) => {\n sub.callback(msg as Extract<T, { type: any }>);\n });\n\n if (!this.subscriptions.has(msg.type)) {\n return;\n }\n\n this.subscriptions.get(msg.type)?.forEach((sub) => {\n sub.callback(msg as Extract<T, { type: any }>);\n });\n }\n\n unsubscribe(id: SiggnId) {\n this.subscribeAllSubscriptions = this.subscribeAllSubscriptions.filter((s) => s.id !== id);\n\n for (const [type, subscriptions] of this.subscriptions) {\n this.subscriptions.set(\n type,\n subscriptions.filter((sub) => sub.id !== id),\n );\n }\n }\n}\n"],"names":["Siggn","id","type","callback","setup","msg","sub","subscriptions"],"mappings":"gFAEO,MAAMA,CAAqB,CACxB,OAAS,EACT,cACA,0BAAyD,CAAA,EAEjE,aAAc,CACZ,KAAK,kBAAoB,GAC3B,CAEA,aAA6B,CAC3B,OAAO,IAAIA,CACb,CAEA,OAAOC,EAAsB,CAC3B,OAAOA,GAAM,QAAQ,KAAK,UAAU,SAAS,EAAE,CAAC,EAClD,CAEA,KAAKA,EAeH,CACA,MAAO,CACL,UAAW,CAACC,EAAMC,IAAa,CAC7B,KAAK,UAAUF,EAAIC,EAAMC,CAAQ,CACnC,EACA,YAAa,IAAM,CACjB,KAAK,YAAYF,CAAE,CACrB,EACA,cAAgBG,GAAU,CACxB,KAAK,cAAcH,EAAIG,CAAK,CAC9B,EACA,aAAeD,GAAa,CAC1B,KAAK,aAAaF,EAAIE,CAAQ,CAChC,CAAA,CAEJ,CAEA,cACEF,EACAG,EAMA,CACAA,EAAM,CAACF,EAAMC,IAAa,KAAK,UAAUF,EAAIC,EAAMC,CAAQ,CAAC,CAC9D,CAEA,UACEF,EACAC,EACAC,EACA,CACK,KAAK,cAAc,IAAID,CAAI,GAC9B,KAAK,cAAc,IAAIA,EAAM,CAAA,CAAE,EAGjC,KAAK,cAAc,IAAIA,CAAI,GAAG,KAAK,CAAE,GAAAD,EAAI,SAAAE,EAAU,CACrD,CAEA,aAAaF,EAAaE,EAA4B,CACpD,KAAK,0BAA0B,KAAK,CAAE,GAAAF,EAAI,SAAAE,EAAU,CACtD,CAEA,QAAQE,EAAQ,CACd,KAAK,0BAA0B,QAASC,GAAQ,CAC9CA,EAAI,SAASD,CAAgC,CAC/C,CAAC,EAEI,KAAK,cAAc,IAAIA,EAAI,IAAI,GAIpC,KAAK,cAAc,IAAIA,EAAI,IAAI,GAAG,QAASC,GAAQ,CACjDA,EAAI,SAASD,CAAgC,CAC/C,CAAC,CACH,CAEA,YAAYJ,EAAa,CACvB,KAAK,0BAA4B,KAAK,0BAA0B,OAAQ,GAAM,EAAE,KAAOA,CAAE,EAEzF,SAAW,CAACC,EAAMK,CAAa,IAAK,KAAK,cACvC,KAAK,cAAc,IACjBL,EACAK,EAAc,OAAQD,GAAQA,EAAI,KAAOL,CAAE,CAAA,CAGjD,CACF"}
@@ -0,0 +1,58 @@
1
+ class r {
2
+ nextId = 0;
3
+ subscriptions;
4
+ subscribeAllSubscriptions = [];
5
+ constructor() {
6
+ this.subscriptions = /* @__PURE__ */ new Map();
7
+ }
8
+ createClone() {
9
+ return new r();
10
+ }
11
+ makeId(i) {
12
+ return i ?? `sub_${(this.nextId++).toString(36)}`;
13
+ }
14
+ make(i) {
15
+ return {
16
+ subscribe: (s, b) => {
17
+ this.subscribe(i, s, b);
18
+ },
19
+ unsubscribe: () => {
20
+ this.unsubscribe(i);
21
+ },
22
+ subscribeMany: (s) => {
23
+ this.subscribeMany(i, s);
24
+ },
25
+ subscribeAll: (s) => {
26
+ this.subscribeAll(i, s);
27
+ }
28
+ };
29
+ }
30
+ subscribeMany(i, s) {
31
+ s((b, t) => this.subscribe(i, b, t));
32
+ }
33
+ subscribe(i, s, b) {
34
+ this.subscriptions.has(s) || this.subscriptions.set(s, []), this.subscriptions.get(s)?.push({ id: i, callback: b });
35
+ }
36
+ subscribeAll(i, s) {
37
+ this.subscribeAllSubscriptions.push({ id: i, callback: s });
38
+ }
39
+ publish(i) {
40
+ this.subscribeAllSubscriptions.forEach((s) => {
41
+ s.callback(i);
42
+ }), this.subscriptions.has(i.type) && this.subscriptions.get(i.type)?.forEach((s) => {
43
+ s.callback(i);
44
+ });
45
+ }
46
+ unsubscribe(i) {
47
+ this.subscribeAllSubscriptions = this.subscribeAllSubscriptions.filter((s) => s.id !== i);
48
+ for (const [s, b] of this.subscriptions)
49
+ this.subscriptions.set(
50
+ s,
51
+ b.filter((t) => t.id !== i)
52
+ );
53
+ }
54
+ }
55
+ export {
56
+ r as Siggn
57
+ };
58
+ //# sourceMappingURL=index.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.es.js","sources":["../src/siggn.ts"],"sourcesContent":["import type { Msg, Subscription, SiggnId } from './types.js';\n\nexport class Siggn<T extends Msg> {\n private nextId = 0;\n private subscriptions: Map<T['type'], Array<Subscription<T, any>>>;\n private subscribeAllSubscriptions: Array<Subscription<T, any>> = [];\n\n constructor() {\n this.subscriptions = new Map();\n }\n\n createClone<C extends Msg>() {\n return new Siggn<C | T>();\n }\n\n makeId(id?: string): SiggnId {\n return id ?? `sub_${(this.nextId++).toString(36)}`;\n }\n\n make(id: SiggnId): {\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void;\n unsubscribe: () => void;\n subscribeMany: (\n setup: (\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void,\n ) => void,\n ) => void;\n subscribeAll: (callback: (msg: T) => void) => void;\n } {\n return {\n subscribe: (type, callback) => {\n this.subscribe(id, type, callback);\n },\n unsubscribe: () => {\n this.unsubscribe(id);\n },\n subscribeMany: (setup) => {\n this.subscribeMany(id, setup);\n },\n subscribeAll: (callback) => {\n this.subscribeAll(id, callback);\n },\n };\n }\n\n subscribeMany(\n id: SiggnId,\n setup: (\n subscribe: <K extends T['type']>(\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) => void,\n ) => void,\n ) {\n setup((type, callback) => this.subscribe(id, type, callback));\n }\n\n subscribe<K extends T['type']>(\n id: SiggnId,\n type: K,\n callback: (msg: Extract<T, { type: K }>) => void,\n ) {\n if (!this.subscriptions.has(type)) {\n this.subscriptions.set(type, []);\n }\n\n this.subscriptions.get(type)?.push({ id, callback });\n }\n\n subscribeAll(id: SiggnId, callback: (msg: T) => void) {\n this.subscribeAllSubscriptions.push({ id, callback });\n }\n\n publish(msg: T) {\n this.subscribeAllSubscriptions.forEach((sub) => {\n sub.callback(msg as Extract<T, { type: any }>);\n });\n\n if (!this.subscriptions.has(msg.type)) {\n return;\n }\n\n this.subscriptions.get(msg.type)?.forEach((sub) => {\n sub.callback(msg as Extract<T, { type: any }>);\n });\n }\n\n unsubscribe(id: SiggnId) {\n this.subscribeAllSubscriptions = this.subscribeAllSubscriptions.filter((s) => s.id !== id);\n\n for (const [type, subscriptions] of this.subscriptions) {\n this.subscriptions.set(\n type,\n subscriptions.filter((sub) => sub.id !== id),\n );\n }\n }\n}\n"],"names":["Siggn","id","type","callback","setup","msg","sub","subscriptions"],"mappings":"AAEO,MAAMA,EAAqB;AAAA,EACxB,SAAS;AAAA,EACT;AAAA,EACA,4BAAyD,CAAA;AAAA,EAEjE,cAAc;AACZ,SAAK,oCAAoB,IAAA;AAAA,EAC3B;AAAA,EAEA,cAA6B;AAC3B,WAAO,IAAIA,EAAA;AAAA,EACb;AAAA,EAEA,OAAOC,GAAsB;AAC3B,WAAOA,KAAM,QAAQ,KAAK,UAAU,SAAS,EAAE,CAAC;AAAA,EAClD;AAAA,EAEA,KAAKA,GAeH;AACA,WAAO;AAAA,MACL,WAAW,CAACC,GAAMC,MAAa;AAC7B,aAAK,UAAUF,GAAIC,GAAMC,CAAQ;AAAA,MACnC;AAAA,MACA,aAAa,MAAM;AACjB,aAAK,YAAYF,CAAE;AAAA,MACrB;AAAA,MACA,eAAe,CAACG,MAAU;AACxB,aAAK,cAAcH,GAAIG,CAAK;AAAA,MAC9B;AAAA,MACA,cAAc,CAACD,MAAa;AAC1B,aAAK,aAAaF,GAAIE,CAAQ;AAAA,MAChC;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,cACEF,GACAG,GAMA;AACA,IAAAA,EAAM,CAACF,GAAMC,MAAa,KAAK,UAAUF,GAAIC,GAAMC,CAAQ,CAAC;AAAA,EAC9D;AAAA,EAEA,UACEF,GACAC,GACAC,GACA;AACA,IAAK,KAAK,cAAc,IAAID,CAAI,KAC9B,KAAK,cAAc,IAAIA,GAAM,CAAA,CAAE,GAGjC,KAAK,cAAc,IAAIA,CAAI,GAAG,KAAK,EAAE,IAAAD,GAAI,UAAAE,GAAU;AAAA,EACrD;AAAA,EAEA,aAAaF,GAAaE,GAA4B;AACpD,SAAK,0BAA0B,KAAK,EAAE,IAAAF,GAAI,UAAAE,GAAU;AAAA,EACtD;AAAA,EAEA,QAAQE,GAAQ;AAKd,IAJA,KAAK,0BAA0B,QAAQ,CAACC,MAAQ;AAC9C,MAAAA,EAAI,SAASD,CAAgC;AAAA,IAC/C,CAAC,GAEI,KAAK,cAAc,IAAIA,EAAI,IAAI,KAIpC,KAAK,cAAc,IAAIA,EAAI,IAAI,GAAG,QAAQ,CAACC,MAAQ;AACjD,MAAAA,EAAI,SAASD,CAAgC;AAAA,IAC/C,CAAC;AAAA,EACH;AAAA,EAEA,YAAYJ,GAAa;AACvB,SAAK,4BAA4B,KAAK,0BAA0B,OAAO,CAAC,MAAM,EAAE,OAAOA,CAAE;AAEzF,eAAW,CAACC,GAAMK,CAAa,KAAK,KAAK;AACvC,WAAK,cAAc;AAAA,QACjBL;AAAA,QACAK,EAAc,OAAO,CAACD,MAAQA,EAAI,OAAOL,CAAE;AAAA,MAAA;AAAA,EAGjD;AACF;"}
package/dist/siggn.d.ts CHANGED
@@ -1,8 +1,12 @@
1
- import type { Msg } from './types.js';
1
+ import { Msg, SiggnId } from './types.js';
2
2
  export declare class Siggn<T extends Msg> {
3
+ private nextId;
3
4
  private subscriptions;
5
+ private subscribeAllSubscriptions;
4
6
  constructor();
5
- make(id: string): {
7
+ createClone<C extends Msg>(): Siggn<T | C>;
8
+ makeId(id?: string): SiggnId;
9
+ make(id: SiggnId): {
6
10
  subscribe: <K extends T['type']>(type: K, callback: (msg: Extract<T, {
7
11
  type: K;
8
12
  }>) => void) => void;
@@ -10,16 +14,16 @@ export declare class Siggn<T extends Msg> {
10
14
  subscribeMany: (setup: (subscribe: <K extends T['type']>(type: K, callback: (msg: Extract<T, {
11
15
  type: K;
12
16
  }>) => void) => void) => void) => void;
17
+ subscribeAll: (callback: (msg: T) => void) => void;
13
18
  };
14
- subscribeMany(id: string, setup: (subscribe: <K extends T['type']>(type: K, callback: (msg: Extract<T, {
19
+ subscribeMany(id: SiggnId, setup: (subscribe: <K extends T['type']>(type: K, callback: (msg: Extract<T, {
15
20
  type: K;
16
21
  }>) => void) => void) => void): void;
17
- subscribe<K extends T['type']>(id: string, type: K, callback: (msg: Extract<T, {
22
+ subscribe<K extends T['type']>(id: SiggnId, type: K, callback: (msg: Extract<T, {
18
23
  type: K;
19
24
  }>) => void): void;
20
- publish<K extends T['type']>(msg: Extract<T, {
21
- type: K;
22
- }>): void;
23
- unsubscribe(id: string): void;
25
+ subscribeAll(id: SiggnId, callback: (msg: T) => void): void;
26
+ publish(msg: T): void;
27
+ unsubscribe(id: SiggnId): void;
24
28
  }
25
29
  //# sourceMappingURL=siggn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"siggn.d.ts","sourceRoot":"","sources":["../src/siggn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAgB,MAAM,YAAY,CAAC;AAEpD,qBAAa,KAAK,CAAC,CAAC,SAAS,GAAG;IAC9B,OAAO,CAAC,aAAa,CAA8C;;IAMnE,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG;QAChB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,CAAC;QACV,WAAW,EAAE,MAAM,IAAI,CAAC;QACxB,aAAa,EAAE,CACb,KAAK,EAAE,CACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,KACN,IAAI,KACN,IAAI,CAAC;KACX;IAcD,aAAa,CACX,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,CACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,KACN,IAAI;IAKX,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI;IASlD,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;IAUzD,WAAW,CAAC,EAAE,EAAE,MAAM;CAQvB"}
1
+ {"version":3,"file":"siggn.d.ts","sourceRoot":"","sources":["../src/siggn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAgB,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7D,qBAAa,KAAK,CAAC,CAAC,SAAS,GAAG;IAC9B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,yBAAyB,CAAmC;;IAMpE,WAAW,CAAC,CAAC,SAAS,GAAG;IAIzB,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAI5B,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG;QACjB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,CAAC;QACV,WAAW,EAAE,MAAM,IAAI,CAAC;QACxB,aAAa,EAAE,CACb,KAAK,EAAE,CACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,KACN,IAAI,KACN,IAAI,CAAC;QACV,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC;KACpD;IAiBD,aAAa,CACX,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,CACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI,KAC7C,IAAI,KACN,IAAI;IAKX,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAC3B,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI;IASlD,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI;IAIpD,OAAO,CAAC,GAAG,EAAE,CAAC;IAcd,WAAW,CAAC,EAAE,EAAE,OAAO;CAUxB"}
package/dist/types.d.ts CHANGED
@@ -11,4 +11,5 @@ export type Subscription<T extends Msg, K extends T['type']> = {
11
11
  export type SubscriptionMap<T extends Msg> = {
12
12
  [K in T['type']]: Array<Subscription<T, K>>;
13
13
  };
14
+ export type SiggnId = string;
14
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI;IAC7D,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,GAAG,IAAI;KAC1C,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC5C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI;IAC7D,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,GAAG,IAAI;KAC1C,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@siggn/core",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "A lightweight message bus system for Typescript",
5
5
  "keywords": [
6
6
  "pub/sub",
7
7
  "message",
8
8
  "event",
9
- "bus"
9
+ "bus",
10
+ "typesafe"
10
11
  ],
11
12
  "publishConfig": {
12
13
  "@siggn:registry": "https://registry.npmjs.org/",
@@ -18,40 +19,39 @@
18
19
  },
19
20
  "repository": {
20
21
  "type": "git",
21
- "url": "git+https://github.com/Guiguerreiro39/siggn.git/",
22
+ "url": "https://github.com/Guiguerreiro39/siggn.git/",
22
23
  "directory": "packages/core"
23
24
  },
25
+ "main": "./dist/index.cjs.js",
26
+ "module": "./dist/index.es.js",
27
+ "types": "./dist/index.d.ts",
28
+ "exports": {
29
+ ".": {
30
+ "types": "./dist/index.d.ts",
31
+ "import": "./dist/index.es.js",
32
+ "require": "./dist/index.cjs.js"
33
+ }
34
+ },
24
35
  "files": [
25
36
  "dist"
26
37
  ],
27
38
  "license": "MIT",
28
39
  "author": "Guilherme Guerreiro (https://guilhermegr.com)",
29
40
  "type": "module",
30
- "main": "dist/index.js",
31
- "types": "./dist/index.d.ts",
32
- "module": "./dist/index.mjs",
33
- "exports": {
34
- ".": {
35
- "require": "./dist/index.js",
36
- "import": "./dist/index.mjs",
37
- "types": "./dist/index.d.ts"
38
- }
39
- },
41
+ "sideEffects": false,
40
42
  "devDependencies": {
41
43
  "typescript": "^5.9.3",
44
+ "vite": "^7.1.12",
45
+ "vite-plugin-dts": "^4.5.4",
42
46
  "vitest": "^3.2.4"
43
47
  },
44
48
  "peerDependencies": {
45
49
  "typescript": "^5"
46
50
  },
47
51
  "scripts": {
48
- "dev": "vitest",
52
+ "dev": "vite build --watch",
53
+ "clean": "rm -rf dist",
49
54
  "test": "vitest run",
50
- "build": "tsc",
51
- "ci": "pnpm run build && pnpm run check-format && pnpm run test",
52
- "format": "prettier --write .",
53
- "check-format": "prettier --check .",
54
- "version": "changeset version",
55
- "release": "changeset publish"
55
+ "build": "vite build"
56
56
  }
57
57
  }
package/dist/index.js DELETED
@@ -1,3 +0,0 @@
1
- export * from './siggn.js';
2
- export * from './types.js';
3
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
package/dist/siggn.js DELETED
@@ -1,42 +0,0 @@
1
- export class Siggn {
2
- subscriptions;
3
- constructor() {
4
- this.subscriptions = new Map();
5
- }
6
- make(id) {
7
- return {
8
- subscribe: (type, callback) => {
9
- this.subscribe(id, type, callback);
10
- },
11
- unsubscribe: () => {
12
- this.unsubscribe(id);
13
- },
14
- subscribeMany: (setup) => {
15
- this.subscribeMany(id, setup);
16
- },
17
- };
18
- }
19
- subscribeMany(id, setup) {
20
- setup((type, callback) => this.subscribe(id, type, callback));
21
- }
22
- subscribe(id, type, callback) {
23
- if (!this.subscriptions.has(type)) {
24
- this.subscriptions.set(type, []);
25
- }
26
- this.subscriptions.get(type)?.push({ id, callback });
27
- }
28
- publish(msg) {
29
- if (!this.subscriptions.has(msg.type)) {
30
- return;
31
- }
32
- this.subscriptions.get(msg.type)?.forEach((sub) => {
33
- sub.callback(msg);
34
- });
35
- }
36
- unsubscribe(id) {
37
- for (const [type, subscriptions] of this.subscriptions) {
38
- this.subscriptions.set(type, subscriptions.filter((sub) => sub.id !== id));
39
- }
40
- }
41
- }
42
- //# sourceMappingURL=siggn.js.map
package/dist/siggn.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"siggn.js","sourceRoot":"","sources":["../src/siggn.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,KAAK;IACR,aAAa,CAA8C;IAEnE;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,EAAU;QAeb,OAAO;YACL,SAAS,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC5B,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,aAAa,CACX,EAAU,EACV,KAKS;QAET,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,SAAS,CACP,EAAU,EACV,IAAO,EACP,QAAgD;QAEhD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CAAsB,GAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAChD,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,KAAK,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvD,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,EACJ,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAC7C,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=siggn.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"siggn.test.d.ts","sourceRoot":"","sources":["../src/siggn.test.ts"],"names":[],"mappings":""}
@@ -1,84 +0,0 @@
1
- import { Siggn } from './siggn.js';
2
- import { test, expect } from 'vitest';
3
- test('user should be able to use subscribe and publish', () => {
4
- const siggn = new Siggn();
5
- let count = 0;
6
- siggn.subscribe('1', 'increment_count', (msg) => {
7
- count += msg.value;
8
- });
9
- siggn.subscribe('1', 'decrement_count', (msg) => {
10
- count -= msg.value;
11
- });
12
- siggn.publish({ type: 'increment_count', value: 4 });
13
- expect(count).toBe(4);
14
- siggn.publish({ type: 'decrement_count', value: 2 });
15
- expect(count).toBe(2);
16
- });
17
- test('user should be able to use unsubscribe', () => {
18
- const siggn = new Siggn();
19
- let count = 0;
20
- siggn.subscribe('1', 'increment_count', (msg) => {
21
- count += msg.value;
22
- });
23
- siggn.subscribe('1', 'decrement_count', (msg) => {
24
- count -= msg.value;
25
- });
26
- siggn.publish({ type: 'increment_count', value: 4 });
27
- expect(count).toBe(4);
28
- siggn.publish({ type: 'decrement_count', value: 2 });
29
- expect(count).toBe(2);
30
- siggn.unsubscribe('1');
31
- siggn.publish({ type: 'increment_count', value: 4 });
32
- expect(count).toBe(2);
33
- });
34
- test('user should be able to use makeSubscriptions to subscribe and publish', () => {
35
- const siggn = new Siggn();
36
- let count = 0;
37
- const subscriptions = siggn.make('1');
38
- subscriptions.subscribe('increment_count', (msg) => {
39
- count += msg.value;
40
- });
41
- subscriptions.subscribe('decrement_count', (msg) => {
42
- count -= msg.value;
43
- });
44
- siggn.publish({ type: 'increment_count', value: 4 });
45
- expect(count).toBe(4);
46
- siggn.publish({ type: 'decrement_count', value: 2 });
47
- expect(count).toBe(2);
48
- });
49
- test('user should be able to use makeSubscriptions to unsubscribe', () => {
50
- const siggn = new Siggn();
51
- let count = 0;
52
- const subscriptions = siggn.make('1');
53
- subscriptions.subscribe('increment_count', (msg) => {
54
- count += msg.value;
55
- });
56
- subscriptions.subscribe('decrement_count', (msg) => {
57
- count -= msg.value;
58
- });
59
- siggn.publish({ type: 'increment_count', value: 4 });
60
- expect(count).toBe(4);
61
- siggn.publish({ type: 'decrement_count', value: 2 });
62
- expect(count).toBe(2);
63
- subscriptions.unsubscribe();
64
- siggn.publish({ type: 'increment_count', value: 4 });
65
- expect(count).toBe(2);
66
- });
67
- test('user should be able to use makeSubscriptions to subscribeMany and publish', () => {
68
- const siggn = new Siggn();
69
- let count = 0;
70
- const subscriptions = siggn.make('1');
71
- subscriptions.subscribeMany((subscribe) => {
72
- subscribe('increment_count', (msg) => {
73
- count += msg.value;
74
- });
75
- subscribe('decrement_count', (msg) => {
76
- count -= msg.value;
77
- });
78
- });
79
- siggn.publish({ type: 'increment_count', value: 4 });
80
- expect(count).toBe(4);
81
- siggn.publish({ type: 'decrement_count', value: 2 });
82
- expect(count).toBe(2);
83
- });
84
- //# sourceMappingURL=siggn.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"siggn.test.js","sourceRoot":"","sources":["../src/siggn.test.ts"],"names":[],"mappings":"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"}
package/dist/types.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}