larasopp 1.0.4 → 1.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/lib/Core.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import { Events } from "easy-event-emitter";
2
+ export declare const SocketEvents: readonly ["open", "close", "error"];
3
+ export type TSocketEvents = typeof SocketEvents[number];
2
4
  export declare const ListenerEvents: readonly ["subscribe", "unsubscribe"];
3
5
  export type TListenerEvents = typeof ListenerEvents[number];
4
6
  export type TListenerCallback = (data: {
package/lib/Core.js CHANGED
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ListenerEvents = void 0;
6
+ exports.ListenerEvents = exports.SocketEvents = void 0;
7
7
  const easy_event_emitter_1 = __importDefault(require("easy-event-emitter"));
8
+ exports.SocketEvents = ['open', 'close', 'error'];
8
9
  exports.ListenerEvents = ['subscribe', 'unsubscribe'];
9
10
  class Core {
10
11
  constructor(config) {
@@ -121,9 +122,8 @@ class Core {
121
122
  return this._status;
122
123
  }
123
124
  send(message) {
124
- if (!this.status) {
125
+ if (!this.status)
125
126
  return;
126
- }
127
127
  this.ws.send(JSON.stringify(message));
128
128
  }
129
129
  }
package/lib/index.d.ts CHANGED
@@ -1,8 +1,11 @@
1
- import Core, { IConfig, TPermissions } from "./Core";
1
+ import { Event } from "easy-event-emitter";
2
+ import Core, { IConfig, TPermissions, TSocketEvents, TListenerCallback } from "./Core";
2
3
  import Subscribe from "./Subscribe";
3
4
  declare class Larasopp extends Core {
4
5
  constructor(config: IConfig);
5
6
  subscribe(channel: string): Subscribe;
6
7
  trigger<T>(channel: string, event: string, message: T, permission?: TPermissions): void;
8
+ addListener(event: TSocketEvents, callback: TListenerCallback): Event | undefined;
7
9
  }
10
+ export type { Subscribe };
8
11
  export default Larasopp;
package/lib/index.js CHANGED
@@ -1,9 +1,32 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const Core_1 = __importDefault(require("./Core"));
29
+ const Core_1 = __importStar(require("./Core"));
7
30
  const Subscribe_1 = __importDefault(require("./Subscribe"));
8
31
  class Larasopp extends Core_1.default {
9
32
  constructor(config) {
@@ -27,5 +50,10 @@ class Larasopp extends Core_1.default {
27
50
  type: permission
28
51
  });
29
52
  }
53
+ addListener(event, callback) {
54
+ if (!Core_1.SocketEvents.includes(event))
55
+ return;
56
+ return this.events.addListener(event, callback);
57
+ }
30
58
  }
31
59
  exports.default = Larasopp;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "larasopp",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "Websocket client for laravel",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
package/src/Core.ts CHANGED
@@ -2,6 +2,9 @@ import EventEmitter,{
2
2
  Events
3
3
  } from "easy-event-emitter";
4
4
 
5
+ export const SocketEvents = ['open', 'close', 'error'] as const;
6
+ export type TSocketEvents = typeof SocketEvents[number];
7
+
5
8
  export const ListenerEvents = ['subscribe', 'unsubscribe'] as const;
6
9
  export type TListenerEvents = typeof ListenerEvents[number];
7
10
 
@@ -145,9 +148,7 @@ abstract class Core {
145
148
  }
146
149
 
147
150
  protected send<T>(message: TMessage<T>) {
148
- if (!this.status) {
149
- return;
150
- }
151
+ if (!this.status) return;
151
152
  this.ws!.send(JSON.stringify(message));
152
153
  }
153
154
  }
package/src/index.ts CHANGED
@@ -1,6 +1,12 @@
1
+ import {
2
+ Event
3
+ } from "easy-event-emitter";
1
4
  import Core,{
2
5
  IConfig,
3
- TPermissions
6
+ TPermissions,
7
+ SocketEvents,
8
+ TSocketEvents,
9
+ TListenerCallback
4
10
  } from "./Core";
5
11
  import Subscribe from "./Subscribe";
6
12
 
@@ -30,6 +36,15 @@ class Larasopp extends Core {
30
36
  type: permission
31
37
  });
32
38
  }
39
+
40
+ public addListener(event: TSocketEvents, callback: TListenerCallback): Event | undefined {
41
+ if (!SocketEvents.includes(event)) return;
42
+ return this.events.addListener(event, callback);
43
+ }
33
44
  }
34
45
 
46
+ export type {
47
+ Subscribe
48
+ };
49
+
35
50
  export default Larasopp;