@gjsify/events 0.0.4 → 0.1.1

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.
@@ -0,0 +1,69 @@
1
+ import type { EventEmitterOptions, OnOptions, OnceOptions } from 'node:events';
2
+ type EventListener = (...args: any[]) => void;
3
+ declare const kCapture: unique symbol;
4
+ /**
5
+ * Node.js-compatible EventEmitter for GJS.
6
+ */
7
+ export declare class EventEmitter {
8
+ static defaultMaxListeners: number;
9
+ static readonly errorMonitor: unique symbol;
10
+ static readonly captureRejectionSymbol: symbol;
11
+ private static _captureRejections;
12
+ static get captureRejections(): boolean;
13
+ static set captureRejections(value: boolean);
14
+ _events: Record<string | symbol, EventListener | EventListener[]>;
15
+ _eventsCount: number;
16
+ _maxListeners: number | undefined;
17
+ [kCapture]: boolean;
18
+ constructor(opts?: EventEmitterOptions);
19
+ setMaxListeners(n: number): this;
20
+ getMaxListeners(): number;
21
+ emit(type: string | symbol, ...args: any[]): boolean;
22
+ private _addCatch;
23
+ addListener(type: string | symbol, listener: EventListener): this;
24
+ on(type: string | symbol, listener: EventListener): this;
25
+ prependListener(type: string | symbol, listener: EventListener): this;
26
+ private _addListener;
27
+ once(type: string | symbol, listener: EventListener): this;
28
+ prependOnceListener(type: string | symbol, listener: EventListener): this;
29
+ removeListener(type: string | symbol, listener: EventListener): this;
30
+ off(type: string | symbol, listener: EventListener): this;
31
+ removeAllListeners(type?: string | symbol): this;
32
+ listeners(type: string | symbol): EventListener[];
33
+ rawListeners(type: string | symbol): EventListener[];
34
+ listenerCount(type: string | symbol): number;
35
+ eventNames(): (string | symbol)[];
36
+ /**
37
+ * Returns a promise that resolves when the emitter emits the given event,
38
+ * or rejects if the emitter emits 'error' while waiting.
39
+ */
40
+ static once(emitter: EventEmitter | EventTarget, name: string | symbol, options?: OnceOptions): Promise<unknown[]>;
41
+ /**
42
+ * Returns an async iterator that yields event arguments each time the emitter emits.
43
+ */
44
+ static on(emitter: EventEmitter, event: string | symbol, options?: OnOptions): AsyncIterableIterator<unknown[]>;
45
+ /**
46
+ * Returns the number of listeners listening to the event name.
47
+ * @deprecated Use emitter.listenerCount() instead.
48
+ */
49
+ static listenerCount(emitter: EventEmitter, type: string | symbol): number;
50
+ /**
51
+ * Returns a copy of the array of listeners for the event named eventName.
52
+ */
53
+ static getEventListeners(emitter: EventEmitter | EventTarget, name: string | symbol): EventListener[];
54
+ /**
55
+ * Set max listeners on one or more emitters.
56
+ */
57
+ static setMaxListeners(n: number, ...emitters: (EventEmitter | EventTarget)[]): void;
58
+ /**
59
+ * Returns the currently set max listeners on the emitter.
60
+ */
61
+ static getMaxListeners(emitter: EventEmitter | EventTarget): number;
62
+ /**
63
+ * Listens once to an abort event on the provided signal and returns a disposable.
64
+ */
65
+ static addAbortListener(signal: AbortSignal, listener: EventListener): {
66
+ [Symbol.dispose](): void;
67
+ };
68
+ }
69
+ export {};
@@ -0,0 +1,13 @@
1
+ import { EventEmitter } from './event-emitter.js';
2
+ export { EventEmitter };
3
+ export declare const captureRejectionSymbol: symbol;
4
+ export declare const errorMonitor: symbol;
5
+ export declare const defaultMaxListeners: number;
6
+ export declare const setMaxListeners: typeof EventEmitter.setMaxListeners;
7
+ export declare const getMaxListeners: typeof EventEmitter.getMaxListeners;
8
+ export declare const once: typeof EventEmitter.once;
9
+ export declare const on: typeof EventEmitter.on;
10
+ export declare const getEventListeners: typeof EventEmitter.getEventListeners;
11
+ export declare const listenerCount: typeof EventEmitter.listenerCount;
12
+ export declare const addAbortListener: typeof EventEmitter.addAbortListener;
13
+ export default EventEmitter;
package/package.json CHANGED
@@ -1,32 +1,27 @@
1
1
  {
2
2
  "name": "@gjsify/events",
3
- "version": "0.0.4",
3
+ "version": "0.1.1",
4
4
  "description": "Node.js events module for Gjs",
5
5
  "type": "module",
6
- "main": "lib/cjs/index.js",
7
6
  "module": "lib/esm/index.js",
7
+ "types": "lib/types/index.d.ts",
8
8
  "exports": {
9
9
  ".": {
10
- "import": {
11
- "types": "./lib/types/index.d.ts",
12
- "default": "./lib/esm/index.js"
13
- },
14
- "require": {
15
- "types": "./lib/types/index.d.ts",
16
- "default": "./lib/cjs/index.js"
17
- }
10
+ "types": "./lib/types/index.d.ts",
11
+ "require": "./cjs-compat.cjs",
12
+ "default": "./lib/esm/index.js"
18
13
  }
19
14
  },
20
15
  "scripts": {
21
- "clear": "rm -rf lib tsconfig.tsbuildinfo tsconfig.types.tsbuildinfo || exit 0",
22
- "print:name": "echo '@gjsify/events'",
23
- "build": "yarn print:name && yarn build:gjsify",
16
+ "clear": "rm -rf lib tsconfig.tsbuildinfo tsconfig.types.tsbuildinfo test.gjs.mjs test.node.mjs || exit 0",
17
+ "check": "tsc --noEmit",
18
+ "build": "yarn build:gjsify && yarn build:types",
24
19
  "build:gjsify": "gjsify build --library 'src/**/*.{ts,js}' --exclude 'src/**/*.spec.{mts,ts}' 'src/test.{mts,ts}'",
25
- "build:types": "tsc --project tsconfig.types.json || exit 0",
20
+ "build:types": "tsc",
26
21
  "build:test": "yarn build:test:gjs && yarn build:test:node",
27
22
  "build:test:gjs": "gjsify build src/test.mts --app gjs --outfile test.gjs.mjs",
28
23
  "build:test:node": "gjsify build src/test.mts --app node --outfile test.node.mjs",
29
- "test": "yarn print:name && yarn build:gjsify && yarn build:test && yarn test:node && yarn test:gjs",
24
+ "test": "yarn build:gjsify && yarn build:test && yarn test:node && yarn test:gjs",
30
25
  "test:gjs": "gjs -m test.gjs.mjs",
31
26
  "test:node": "node test.node.mjs"
32
27
  },
@@ -36,12 +31,9 @@
36
31
  "events"
37
32
  ],
38
33
  "devDependencies": {
39
- "@gjsify/cli": "^0.0.4",
40
- "@gjsify/unit": "^0.0.4",
41
- "@types/node": "^20.10.5",
42
- "typescript": "^5.3.3"
43
- },
44
- "dependencies": {
45
- "@gjsify/deno_std": "^0.0.4"
34
+ "@gjsify/cli": "^0.1.1",
35
+ "@gjsify/unit": "^0.1.1",
36
+ "@types/node": "^25.5.0",
37
+ "typescript": "^6.0.2"
46
38
  }
47
39
  }