ogma-necord-platform 2.0.0 → 2.2.0

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.
@@ -1,7 +1,5 @@
1
1
  import { ExecutionContext } from '@nestjs/common';
2
2
  import { AbstractInterceptorService, OgmaInterceptorServiceOptions } from '@ogma/nestjs-module';
3
- export declare class NecordParserError extends Error {
4
- }
5
3
  export declare class NecordParser extends AbstractInterceptorService {
6
4
  private readonly store;
7
5
  private getContext;
@@ -1 +1 @@
1
- {"version":3,"file":"necord-interceptor.service.d.ts","sourceRoot":"","sources":["../../src/necord-interceptor.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EACN,0BAA0B,EAC1B,6BAA6B,EAE7B,MAAM,qBAAqB,CAAC;AAyG7B,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAE/C,qBACa,YAAa,SAAQ,0BAA0B;IAC3D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAGlB;IAEJ,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,QAAQ;IAoCP,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAsB9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAY5C,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM;IAI/C,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAkB/C,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAQhE,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAS/C,OAAO,CACf,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,6BAA6B,GACpC,OAAO;CAeV"}
1
+ {"version":3,"file":"necord-interceptor.service.d.ts","sourceRoot":"","sources":["../../src/necord-interceptor.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EACN,0BAA0B,EAC1B,6BAA6B,EAE7B,MAAM,qBAAqB,CAAC;AAoB7B,qBACa,YAAa,SAAQ,0BAA0B;IAC3D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAGlB;IAEJ,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,QAAQ;IAqCP,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAgB9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAM5C,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM;IAI/C,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAY/C,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAQhE,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAS/C,OAAO,CACf,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,6BAA6B,GACpC,OAAO;CASV"}
@@ -6,99 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { AbstractInterceptorService, Parser, } from '@ogma/nestjs-module';
8
8
  import { GatewayVersion } from 'discord.js';
9
- import { NecordExecutionContext } from 'necord';
9
+ import { AsyncCustomListenerContext, NecordExecutionContext, } from 'necord';
10
10
  import { BodyMap, CallpointMap, OriginMap, } from '@argentina-community/events-descriptions';
11
- const DISCORDJS_EVENTS = new Set([
12
- 'applicationCommandPermissionsUpdate',
13
- 'autoModerationActionExecution',
14
- 'autoModerationRuleCreate',
15
- 'autoModerationRuleDelete',
16
- 'autoModerationRuleUpdate',
17
- 'cacheSweep',
18
- 'channelCreate',
19
- 'channelDelete',
20
- 'channelPinsUpdate',
21
- 'channelUpdate',
22
- 'debug',
23
- 'warn',
24
- 'emojiCreate',
25
- 'emojiDelete',
26
- 'emojiUpdate',
27
- 'entitlementCreate',
28
- 'entitlementDelete',
29
- 'entitlementUpdate',
30
- 'error',
31
- 'guildAuditLogEntryCreate',
32
- 'guildAvailable',
33
- 'guildBanAdd',
34
- 'guildBanRemove',
35
- 'guildCreate',
36
- 'guildDelete',
37
- 'guildUnavailable',
38
- 'guildIntegrationsUpdate',
39
- 'guildMemberAdd',
40
- 'guildMemberAvailable',
41
- 'guildMemberRemove',
42
- 'guildMembersChunk',
43
- 'guildMemberUpdate',
44
- 'guildUpdate',
45
- 'guildSoundboardSoundCreate',
46
- 'guildSoundboardSoundDelete',
47
- 'guildSoundboardSoundUpdate',
48
- 'inviteCreate',
49
- 'inviteDelete',
50
- 'messageCreate',
51
- 'messageDelete',
52
- 'messagePollVoteAdd',
53
- 'messagePollVoteRemove',
54
- 'messageReactionRemoveAll',
55
- 'messageReactionRemoveEmoji',
56
- 'messageDeleteBulk',
57
- 'messageReactionAdd',
58
- 'messageReactionRemove',
59
- 'messageUpdate',
60
- 'presenceUpdate',
61
- 'ready',
62
- 'invalidated',
63
- 'roleCreate',
64
- 'roleDelete',
65
- 'roleUpdate',
66
- 'threadCreate',
67
- 'threadDelete',
68
- 'threadListSync',
69
- 'threadMemberUpdate',
70
- 'threadMembersUpdate',
71
- 'threadUpdate',
72
- 'typingStart',
73
- 'userUpdate',
74
- 'voiceChannelEffectSend',
75
- 'voiceStateUpdate',
76
- 'webhookUpdate',
77
- 'webhooksUpdate',
78
- 'interactionCreate',
79
- 'shardDisconnect',
80
- 'shardError',
81
- 'shardReady',
82
- 'shardReconnecting',
83
- 'shardResume',
84
- 'stageInstanceCreate',
85
- 'stageInstanceUpdate',
86
- 'stageInstanceDelete',
87
- 'stickerCreate',
88
- 'stickerDelete',
89
- 'stickerUpdate',
90
- 'subscriptionCreate',
91
- 'subscriptionDelete',
92
- 'subscriptionUpdate',
93
- 'guildScheduledEventCreate',
94
- 'guildScheduledEventUpdate',
95
- 'guildScheduledEventDelete',
96
- 'guildScheduledEventUserAdd',
97
- 'guildScheduledEventUserRemove',
98
- 'soundboardSounds',
99
- ]);
100
- export class NecordParserError extends Error {
101
- }
102
11
  let NecordParser = class NecordParser extends AbstractInterceptorService {
103
12
  store = new WeakMap();
104
13
  getContext(context) {
@@ -113,12 +22,15 @@ let NecordParser = class NecordParser extends AbstractInterceptorService {
113
22
  const necord = this.getContext(context);
114
23
  const discovery = necord.getDiscovery();
115
24
  if (discovery.isListener()) {
116
- const event = discovery.getEvent();
117
- if (!DISCORDJS_EVENTS.has(event)) {
118
- throw new NecordParserError('To-parse event was of a Necord or consumer interface, which is not implemented by the "ogma-necord-platform" package.');
25
+ if (AsyncCustomListenerContext.isAttached()) {
26
+ const scope = AsyncCustomListenerContext.getCurrentContext();
27
+ return {
28
+ name: scope.getRootEvent(),
29
+ payload: scope.getRootArgs(),
30
+ };
119
31
  }
120
32
  return {
121
- name: event,
33
+ name: discovery.getEvent(),
122
34
  payload: necord.getContext(),
123
35
  };
124
36
  }
@@ -133,41 +45,23 @@ let NecordParser = class NecordParser extends AbstractInterceptorService {
133
45
  };
134
46
  }
135
47
  getCallerIp(context) {
136
- try {
137
- const event = this.getEvent(context);
138
- const origin = OriginMap[event.name](...event.payload);
139
- return origin === null
140
- ? '?'
141
- : `${origin.kind} ${origin.namespace}/${origin.value}`;
142
- }
143
- catch (e) {
144
- console.warn(e);
145
- return '';
146
- }
48
+ const event = this.getEvent(context);
49
+ const origin = OriginMap[event.name](...event.payload);
50
+ return origin === null
51
+ ? '?'
52
+ : `${origin.kind} ${origin.namespace}/${origin.value}`;
147
53
  }
148
54
  getMethod(context) {
149
- try {
150
- const event = this.getEvent(context);
151
- return event.name;
152
- }
153
- catch (e) {
154
- console.warn(e);
155
- return '';
156
- }
55
+ const event = this.getEvent(context);
56
+ return event.name;
157
57
  }
158
58
  getProtocol(_context) {
159
59
  return `discord/v${GatewayVersion}`;
160
60
  }
161
61
  getCallPoint(context) {
162
- try {
163
- const event = this.getEvent(context);
164
- const callpoint = CallpointMap[event.name](...event.payload);
165
- return `[::${callpoint.shard}] ${callpoint.location}`;
166
- }
167
- catch (e) {
168
- console.warn(e);
169
- return '';
170
- }
62
+ const event = this.getEvent(context);
63
+ const callpoint = CallpointMap[event.name](...event.payload);
64
+ return `[::${callpoint.shard}] ${callpoint.location}`;
171
65
  }
172
66
  setRequestId(context, requestId) {
173
67
  const necord = this.getContext(context);
@@ -179,15 +73,9 @@ let NecordParser = class NecordParser extends AbstractInterceptorService {
179
73
  '');
180
74
  }
181
75
  getMeta(context, _data, options) {
182
- try {
183
- const event = this.getEvent(context);
184
- const body = BodyMap[event.name](...event.payload);
185
- return options.inlineMeta ? body : void undefined;
186
- }
187
- catch (e) {
188
- console.warn(e);
189
- return void undefined;
190
- }
76
+ const event = this.getEvent(context);
77
+ const body = BodyMap[event.name](...event.payload);
78
+ return options.inlineMeta ? body : void undefined;
191
79
  }
192
80
  };
193
81
  NecordParser = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"necord-interceptor.service.js","sourceRoot":"","sources":["../../src/necord-interceptor.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"necord-interceptor.service.js","sourceRoot":"","sources":["../../src/necord-interceptor.service.ts"],"names":[],"mappings":"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"}