Implemented ODComponents (Part 1)
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
Open Discord Components:
|
||||
------------------------
|
||||
|
||||
The "Components" system will be the new way of creating message and modal templates in Open Discord with support for Discord components v2.
|
||||
|
||||
Messages, embeds, modals, buttons, etc are currently constructed using the "Builders" system located in `./src/builders/...`.
|
||||
|
||||
This will be replaced with the new component factories in `./src/components/...`.
|
||||
|
||||
### Timing
|
||||
Messages, modals & components will slowly be migrated to the new system during upcoming updates. The full migration will happen after `Open Ticket v4.3` and the HTML Transcripts v3 are ready for it.
|
||||
|
||||
For more information, contact [DJj123dj](https://github.com/DJj123dj) on Discord, Github or via email
|
||||
@@ -8,6 +8,7 @@ export * from "./mappings/builder.js"
|
||||
export * from "./mappings/checker.js"
|
||||
export * from "./mappings/client.js"
|
||||
export * from "./mappings/code.js"
|
||||
export * from "./mappings/component.js"
|
||||
export * from "./mappings/config.js"
|
||||
export * from "./mappings/console.js"
|
||||
export * from "./mappings/cooldown.js"
|
||||
|
||||
@@ -18,6 +18,7 @@ export class ODOpenTicketMain extends api.ODMain {
|
||||
|
||||
declare checkers: api.ODMappedCheckerManager
|
||||
declare builders: api.ODMappedBuilderManager
|
||||
declare components: api.ODMappedComponentManager
|
||||
declare responders: api.ODMappedResponderManager
|
||||
declare actions: api.ODMappedActionManager
|
||||
declare verifybars: api.ODMappedVerifyBarManager
|
||||
@@ -86,6 +87,7 @@ export class ODOpenTicketMain extends api.ODMain {
|
||||
new api.ODMappedCheckerFunctionManager(debug)
|
||||
),
|
||||
builders:new api.ODMappedBuilderManager(debug),
|
||||
components:new api.ODMappedComponentManager(debug),
|
||||
client,
|
||||
responders:new api.ODMappedResponderManager(debug,client),
|
||||
actions:new api.ODMappedActionManager(debug),
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
///////////////////////////////////////
|
||||
//OPEN TICKET COMPONENT MAPPINGS
|
||||
///////////////////////////////////////
|
||||
import * as api from "@open-discord-bots/framework/api"
|
||||
import * as discord from "discord.js"
|
||||
|
||||
/**## ODSharedComponentManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODSharedComponentManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODSharedComponentManagerIdMappings extends api.ODComponentManagerIdConstraint {
|
||||
"opendiscord:example-component":{origin:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:example-component"},
|
||||
}
|
||||
|
||||
/**## ODMessageComponentManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODMessageComponentManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODMessageComponentManagerIdMappings extends api.ODComponentManagerIdConstraint {
|
||||
"opendiscord:example-message":{origin:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:example-message"},
|
||||
}
|
||||
|
||||
/**## ODModalComponentManagerIdMappings `interface`
|
||||
* A list of all available IDs in the default `ODModalComponentManager` class in `opendiscord`.
|
||||
* It's used to generate typescript declarations for this class.
|
||||
*/
|
||||
export interface ODModalComponentManagerIdMappings extends api.ODComponentManagerIdConstraint {
|
||||
"opendiscord:example-modal":{origin:"slash"|"text"|"other",params:{guild:discord.Guild|null,channel:discord.TextBasedChannel,user:discord.User},workers:"opendiscord:example-modal"},
|
||||
}
|
||||
|
||||
/////////////////////////////
|
||||
////// MAPPED MANAGERS //////
|
||||
/////////////////////////////
|
||||
|
||||
/**## ODMappedSharedComponentManager `class
|
||||
* A special class with types for the Open Ticket `ODSharedComponentManager` class.
|
||||
*/
|
||||
export class ODMappedSharedComponentManager extends api.ODSharedComponentManager<ODSharedComponentManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedMessageComponentManager `class
|
||||
* A special class with types for the Open Ticket `ODMessageComponentManager` class.
|
||||
*/
|
||||
export class ODMappedMessageComponentManager extends api.ODMessageComponentManager<ODMessageComponentManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedModalComponentManager `class
|
||||
* A special class with types for the Open Ticket `ODModalComponentManager` class.
|
||||
*/
|
||||
export class ODMappedModalComponentManager extends api.ODModalComponentManager<ODModalComponentManagerIdMappings> {}
|
||||
|
||||
/**## ODMappedComponentManager `class
|
||||
* A special class with types for the Open Ticket `ODBuilderManager` class.
|
||||
*/
|
||||
export class ODMappedComponentManager extends api.ODComponentManager<ODSharedComponentManagerIdMappings,ODMessageComponentManagerIdMappings,ODModalComponentManagerIdMappings> {}
|
||||
Reference in New Issue
Block a user