File tree Expand file tree Collapse file tree 3 files changed +24
-4
lines changed
packages/harmonix/src/runtime/internal Expand file tree Collapse file tree 3 files changed +24
-4
lines changed Original file line number Diff line number Diff line change 1+ ---
2+ ' harmonix ' : patch
3+ ---
4+
5+ Add configuration overload on ` defineEvent `
Original file line number Diff line number Diff line change @@ -5,14 +5,29 @@ import type { ClientEvents } from 'discord.js'
55import type { HarmonixEventCallback } from '../../types/runtime/event'
66import type { HarmonixEvent } from '../../types/module'
77
8- export const defineEvent = < T extends keyof ClientEvents > (
8+ export function defineEvent < T extends keyof ClientEvents > (
9+ config : { name : T ; once ?: boolean } ,
10+ callback : HarmonixEventCallback < T >
11+ ) : HarmonixEvent
12+
13+ export function defineEvent < T extends keyof ClientEvents > (
914 name : T ,
1015 callback : HarmonixEventCallback < T >
11- ) => {
16+ ) : HarmonixEvent
17+
18+ export function defineEvent < T extends keyof ClientEvents > (
19+ nameOrConfig : T | { name : T ; once ?: boolean } ,
20+ callback : HarmonixEventCallback < T >
21+ ) {
22+ const name =
23+ typeof nameOrConfig === 'string' ? nameOrConfig : nameOrConfig . name
24+ const once =
25+ typeof nameOrConfig === 'string' ? false : ( nameOrConfig . once ?? false )
26+
1227 return {
1328 type : ModuleType . Event ,
1429 name,
15- once : false ,
30+ once,
1631 callback
1732 } as HarmonixEvent
1833}
Original file line number Diff line number Diff line change 11import { defineEvent } from 'harmonix'
22
3- export default defineEvent ( 'clientReady' , ( client ) => {
3+ export default defineEvent ( { name : 'clientReady' , once : true } , ( client ) => {
44 console . log ( `Logged in as ${ client . user . tag } !` )
55} )
You can’t perform that action at this time.
0 commit comments