Index
Modules:
dimslash
,
dimslash/componentargs
,
dimslash/context
,
dimslash/dispatch
,
dimslash/dsl
,
dimslash/registry
,
dimslash/slashargs
,
dimslash/sync
,
dimslash/types
.
API symbols
addAutocomplete:
dsl: proc addAutocomplete(handler: InteractionHandler; name: string; callback: CommandHandlerProc; guildId = ""; optionName = "")
dsl: template addAutocomplete(handler: InteractionHandler; name: string; body: untyped{nkStmtList})
dsl: template addAutocomplete(handler: InteractionHandler; name, optionName: string; body: untyped{nkStmtList})
dsl: template addAutocomplete(handler: InteractionHandler; name, guildId: string; body: untyped{nkStmtList})
dsl: template addAutocomplete(handler: InteractionHandler; name, optionName, guildId: string; body: untyped{nkStmtList})
addAutocompleteForOption:
dsl: proc addAutocompleteForOption(handler: InteractionHandler; name, optionName: string; callback: CommandHandlerProc; guildId = "")
dsl: template addAutocompleteForOption(handler: InteractionHandler; name, optionName: string; body: untyped{nkStmtList})
dsl: template addAutocompleteForOption(handler: InteractionHandler; name, optionName, guildId: string; body: untyped{nkStmtList})
addButton:
dsl: proc addButton(handler: InteractionHandler; customId: string; callback: CommandHandlerProc)
dsl: template addButton(handler: InteractionHandler; customId: string; body: untyped{nkStmtList})
addMessage:
dsl: proc addMessage(handler: InteractionHandler; name: string; callback: CommandHandlerProc; guildId = "")
dsl: template addMessage(handler: InteractionHandler; name: string; body: untyped{nkStmtList})
dsl: template addMessage(handler: InteractionHandler; name, guildId: string; body: untyped{nkStmtList})
addModal:
dsl: proc addModal(handler: InteractionHandler; customId: string; callback: CommandHandlerProc)
dsl: template addModal(handler: InteractionHandler; customId: string; body: untyped{nkStmtList})
addSelect:
dsl: proc addSelect(handler: InteractionHandler; customId: string; callback: CommandHandlerProc)
dsl: template addSelect(handler: InteractionHandler; customId: string; body: untyped{nkStmtList})
addSlash:
dsl: macro addSlash(handler: InteractionHandler; name, description: string; parameters: varargs[untyped]): untyped
addSlashProc:
dsl: proc addSlashProc(handler: InteractionHandler; name, description: string; callback: CommandHandlerProc; guildId = "")
addUser:
dsl: proc addUser(handler: InteractionHandler; name: string; callback: CommandHandlerProc; guildId = "")
dsl: template addUser(handler: InteractionHandler; name: string; body: untyped{nkStmtList})
dsl: template addUser(handler: InteractionHandler; name, guildId: string; body: untyped{nkStmtList})
ckAutocomplete:
types: CommandKind.ckAutocomplete
ckButton:
types: CommandKind.ckButton
ckMessage:
types: CommandKind.ckMessage
ckModal:
types: CommandKind.ckModal
ckSelect:
types: CommandKind.ckSelect
ckSlash:
types: CommandKind.ckSlash
ckUser:
types: CommandKind.ckUser
CommandHandlerProc:
types: type CommandHandlerProc
CommandKind:
types: enum CommandKind
CommandRegistry:
types: type CommandRegistry
customId:
componentargs: proc customId(i: Interaction): Option[string]
deferResponse:
context: proc deferResponse(handler: InteractionHandler; i: Interaction): Future[void]
ensureImplemented:
types: proc ensureImplemented(kind: CommandKind)
find:
registry: proc find(registry: CommandRegistry; kind: CommandKind; name: string): RegisteredCommand
findAutocomplete:
registry: proc findAutocomplete(registry: CommandRegistry; name: string; optionName = ""): RegisteredCommand
focusedOption:
slashargs: proc focusedOption(i: Interaction): Option[ApplicationCommandInteractionDataOption]
focusedOptionName:
slashargs: proc focusedOptionName(i: Interaction): Option[string]
focusedOptionValue:
slashargs: proc focusedOptionValue(i: Interaction): Option[string]
followup:
context: proc followup(handler: InteractionHandler; i: Interaction; content: string): Future[ Message]
getSlashArg:
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[bool]): Option[bool]
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[float]): Option[float]
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[int]): Option[int]
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[Role]): Option[Role]
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[string]): Option[string]
slashargs: proc getSlashArg(i: Interaction; name: string; _: typedesc[User]): Option[User]
handleInteraction:
dispatch: proc handleInteraction(handler: InteractionHandler; s: Shard; i: Interaction): Future[ bool]
HandlerError:
types: object HandlerError
HandlerErrorKind:
types: enum HandlerErrorKind
hasSlashOption:
dsl: proc hasSlashOption(handler: InteractionHandler; commandName, optionName: string): bool
hekInvalidInteraction:
types: HandlerErrorKind.hekInvalidInteraction
hekNotFound:
types: HandlerErrorKind.hekNotFound
hekNotImplemented:
types: HandlerErrorKind.hekNotImplemented
InteractionHandler:
types: type InteractionHandler
modalValue:
componentargs: proc modalValue(i: Interaction; fieldCustomId: string): Option[string]
modalValues:
componentargs: proc modalValues(i: Interaction): Table[string, string]
newInteractionHandler:
dimslash: proc newInteractionHandler(discord: DiscordClient; defaultGuildId = ""): InteractionHandler
newInvalidInteractionError:
types: proc newInvalidInteractionError(message: string): ref HandlerError
newNotFoundError:
types: proc newNotFoundError(message: string): ref HandlerError
newNotImplementedError:
types: proc newNotImplementedError(message: string): ref HandlerError
newRegistry:
registry: proc newRegistry(): CommandRegistry
normalizeOptionName:
slashargs: proc normalizeOptionName(name: string): string
pairs:
registry: iterator pairs(registry: CommandRegistry; kind: CommandKind): (string, RegisteredCommand)
register:
registry: proc register(registry: CommandRegistry; command: RegisteredCommand)
registerCommands:
sync: proc registerCommands(handler: InteractionHandler; guildId = ""): Future[void]
RegisteredCommand:
types: object RegisteredCommand
registerSlashOptionNames:
dsl: proc registerSlashOptionNames(handler: InteractionHandler; commandName: string; optionNames: openArray[string])
reply:
context: proc reply(handler: InteractionHandler; i: Interaction; content: string): Future[void]
requireSlashArg:
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[bool]): bool
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[float]): float
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[int]): int
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[Role]): Role
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[string]): string
slashargs: proc requireSlashArg(i: Interaction; name: string; _: typedesc[User]): User
selectValues:
componentargs: proc selectValues(i: Interaction): seq[string]
slashOptionNames:
dsl: proc slashOptionNames(handler: InteractionHandler; commandName: string): seq[string]
slashOptions:
slashargs: proc slashOptions(i: Interaction): Table[string, ApplicationCommandInteractionDataOption]
suggest:
context: proc suggest(handler: InteractionHandler; i: Interaction; choices: seq[ApplicationCommandOptionChoice]): Future[void]
context: proc suggest(handler: InteractionHandler; i: Interaction; choices: seq[string]): Future[ void]