Message States (Part 1)
This commit is contained in:
@@ -15,6 +15,7 @@ export interface ODDatabaseManagerIdMappings extends api.ODDatabaseManagerIdCons
|
|||||||
"opendiscord:tickets":ODTicketsDatabase,
|
"opendiscord:tickets":ODTicketsDatabase,
|
||||||
"opendiscord:users":ODUsersDatabase,
|
"opendiscord:users":ODUsersDatabase,
|
||||||
"opendiscord:options":ODOptionsDatabase,
|
"opendiscord:options":ODOptionsDatabase,
|
||||||
|
"opendiscord:message-states":ODMessageStatesDatabase,
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////////////
|
/////////////////////////////////////////
|
||||||
@@ -90,3 +91,8 @@ export class ODUsersDatabase extends api.ODFormattedJsonDatabase<ODUsersDatabase
|
|||||||
* A special class with types for the Open Ticket `database/options.json` database file
|
* A special class with types for the Open Ticket `database/options.json` database file
|
||||||
*/
|
*/
|
||||||
export class ODOptionsDatabase extends api.ODFormattedJsonDatabase<ODOptionsDatabaseIdMappings> {}
|
export class ODOptionsDatabase extends api.ODFormattedJsonDatabase<ODOptionsDatabaseIdMappings> {}
|
||||||
|
|
||||||
|
/**## ODMessageStatesDatabase `class
|
||||||
|
* A special class with types for the Open Ticket `database/states.json` database file
|
||||||
|
*/
|
||||||
|
export class ODMessageStatesDatabase extends api.ODFormattedJsonDatabase {}
|
||||||
@@ -9,7 +9,7 @@ import * as discord from "discord.js"
|
|||||||
* It's used to generate typescript declarations for this class.
|
* It's used to generate typescript declarations for this class.
|
||||||
*/
|
*/
|
||||||
export interface ODStateManagerIdMappings extends api.ODStateManagerIdConstraint {
|
export interface ODStateManagerIdMappings extends api.ODStateManagerIdConstraint {
|
||||||
//"opendiscord:example-state":api.ODState<any>,
|
"opendiscord:message-origin":ODMessageOriginState,
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
@@ -20,3 +20,10 @@ export interface ODStateManagerIdMappings extends api.ODStateManagerIdConstraint
|
|||||||
* A special class with types for the Open Ticket `ODStateManager` class.
|
* A special class with types for the Open Ticket `ODStateManager` class.
|
||||||
*/
|
*/
|
||||||
export class ODMappedStateManager extends api.ODStateManager<ODStateManagerIdMappings> {}
|
export class ODMappedStateManager extends api.ODStateManager<ODStateManagerIdMappings> {}
|
||||||
|
|
||||||
|
/**## ODGeneralJsonConfig `class
|
||||||
|
* A special class with types for the Open Ticket message origin states.
|
||||||
|
*/
|
||||||
|
export class ODMessageOriginState extends api.ODState<{
|
||||||
|
messageOrigin:"ticket-message"|"close-message"|"reopen-message"|"autoclose-message"|"claim-message"|"unclaim-message"|"pin-message"|"unpin-message"
|
||||||
|
}> {}
|
||||||
@@ -10,6 +10,7 @@ export const loadAllDatabases = async () => {
|
|||||||
opendiscord.databases.add(defaultTicketsDatabase)
|
opendiscord.databases.add(defaultTicketsDatabase)
|
||||||
opendiscord.databases.add(defaultUsersDatabase)
|
opendiscord.databases.add(defaultUsersDatabase)
|
||||||
opendiscord.databases.add(defaultOptionsDatabase)
|
opendiscord.databases.add(defaultOptionsDatabase)
|
||||||
|
opendiscord.databases.add(defaultMessageStatesDatabase)
|
||||||
}
|
}
|
||||||
|
|
||||||
const defaultInlineFormatter = new fjs.ArrayFormatter(null,true,new fjs.ObjectFormatter(null,false,[
|
const defaultInlineFormatter = new fjs.ArrayFormatter(null,true,new fjs.ObjectFormatter(null,false,[
|
||||||
@@ -46,8 +47,9 @@ const defaultOptionFormatter = new fjs.ArrayFormatter(null,true,new fjs.ObjectFo
|
|||||||
])
|
])
|
||||||
]))
|
]))
|
||||||
|
|
||||||
export const defaultGlobalDatabase = new api.ODFormattedJsonDatabase("opendiscord:global","global.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
export const defaultGlobalDatabase = new api.ODGlobalDatabase("opendiscord:global","global.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
export const defaultStatsDatabase = new api.ODFormattedJsonDatabase("opendiscord:stats","stats.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
export const defaultStatsDatabase = new api.ODStatsDatabase("opendiscord:stats","stats.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
export const defaultTicketsDatabase = new api.ODFormattedJsonDatabase("opendiscord:tickets","tickets.json",defaultTicketFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
export const defaultTicketsDatabase = new api.ODTicketsDatabase("opendiscord:tickets","tickets.json",defaultTicketFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
export const defaultUsersDatabase = new api.ODFormattedJsonDatabase("opendiscord:users","users.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
export const defaultUsersDatabase = new api.ODUsersDatabase("opendiscord:users","users.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
export const defaultOptionsDatabase = new api.ODFormattedJsonDatabase("opendiscord:options","options.json",defaultOptionFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
export const defaultOptionsDatabase = new api.ODOptionsDatabase("opendiscord:options","options.json",defaultOptionFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
|
export const defaultMessageStatesDatabase = new api.ODMessageStatesDatabase("opendiscord:message-states","states.json",defaultInlineFormatter,(isDevdatabase) ? "./devdatabase/" : "./database/")
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
import {opendiscord, api, utilities} from "../../index.js"
|
import {opendiscord, api, utilities} from "../../index.js"
|
||||||
|
|
||||||
export const loadAllStates = async () => {
|
export const loadAllStates = async () => {
|
||||||
|
const stateDatabase = opendiscord.databases.get("opendiscord:message-states")
|
||||||
|
|
||||||
|
opendiscord.states.add(new api.ODMessageOriginState("opendiscord:message-origin",opendiscord.client,stateDatabase,{}))
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user