This commit is contained in:
2024-12-16 16:51:46 +02:00
parent e264956831
commit 96fbfb60e8
16 changed files with 250 additions and 295 deletions
+19 -19
View File
@@ -1,29 +1,29 @@
/**
* Rules manager class
* Rules manager class, контролен клас за управление на игрови правила
*/
class RulesManager{
name = 'rules';
/**
* Class initializer
* @param {App} app Class initializer
* Class initializer, инициализация на плъгин
* @param {App} app Class initializer, основна апликация
*/
init(app){
const {db} = app;
/**
* Creates a new rule
* @param {Context} ctx Request context
* @param {Rule} data the rule
* Creates a new rule, създаване на ново правило
* @param {Context} ctx Request context, контекст на заявката
* @param {Rule} data the rule, данни за правилото
*/
this.create = async function(ctx, data){
}
/**
* Reads rule by ID
* @param {Number} id rule ID
* Reads rule by ID, извличане на игрово правило от базата от данни по подаден идентификатор
* @param {Number} id rule ID, идентификатор на правило
* @returns {Rule}
*/
this.read = async function(id){
@@ -31,25 +31,25 @@ class RulesManager{
}
/**
* Updates rule
* @param {Context} ctx Request context
* @param {Rule} data the rule
* Updates rule, обновяване на игрово правило
* @param {Context} ctx Request context, контекст на заявката
* @param {Rule} data the rule, данни за правилото
*/
this.update = async function(ctx, data){
}
/**
* Removes rule by ID
* @param {Number} id rule ID
* Removes rule by ID, изтриване на игрово правило по подаден идентификатор
* @param {Number} id rule ID, идентификатор на правилото
*/
this.remove = async function(id){
}
/**
* Returns a set of rules by given criteria
* @param {Query} query criteria
* Returns a set of rules by given criteria, търсене в игровите правила по зададени критерии
* @param {Query} query criteria, критерии, заявка към базата от данни
* @returns {Rule[]}
*/
this.list = async function(query){
@@ -60,7 +60,7 @@ class RulesManager{
/**
* Class starter
* @param {App} app The application
* @param {App} app The application, основна апликация
*/
async start(app){
@@ -68,17 +68,17 @@ class RulesManager{
}
/**
* Rule entity
* Rule entity, игрово правило - елемент
*/
class Rule {
/**
* Rule name
* Rule name, име на правилото
* @type string
*/
name = null;
/**
* Rule definition
* Rule definition, дефиниция на правилото
* @type Object
*/
name = null;