Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1441 ariadna 1
{"version":3,"file":"aiprovider_action_management_table.min.js","sources":["../src/aiprovider_action_management_table.js"],"sourcesContent":["// This file is part of Moodle - http://moodle.org/ //\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.\n\nimport PluginManagementTable from 'core_admin/plugin_management_table';\nimport {call as fetchMany} from 'core/ajax';\n\nlet watching = false;\n\n/**\n * Handles setting plugin state for the AI provider management table.\n *\n * @module     core_ai/aiprovider_action_management_table\n * @copyright  2024 Matt Porritt <matt.porritt@moodle.com>\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\nexport default class extends PluginManagementTable {\n\n    /**\n     * Constructor for the class.\n     *\n     * @param {int} providerid The provider id.\n     */\n    constructor(providerid) {\n        super(); // Call the parent constructor, so inherited properties and methods initialize properly.\n        this.providerid = providerid; // Store provider id as an instance field.\n    }\n\n    /**\n     * Initialise an instance of the class.\n     *\n     * @param {int} providerid The provider id.\n     */\n    static init(providerid) {\n        if (watching) {\n            return;\n        }\n        watching = true;\n        new this(providerid);\n    }\n\n    /**\n     * Set the plugin state (enabled or disabled).\n     *\n     * @param {string} methodname The web service to call.\n     * @param {string} plugin The name of the plugin and action to set the state for.\n     * @param {number} state The state to set.\n     * @returns {Promise}\n     */\n    setPluginState(methodname, plugin, state) {\n        const providerid = this.providerid;\n        return fetchMany([{\n            methodname,\n            args: {\n                plugin,\n                state,\n                providerid,\n            },\n        }])[0];\n    }\n\n}\n"],"names":["watching","PluginManagementTable","constructor","providerid","this","setPluginState","methodname","plugin","state","args"],"mappings":"0VAiBIA,UAAW;;;;;;;4BAScC,iCAOzBC,YAAYC,yBAEHA,WAAaA,uBAQVA,YACJH,WAGJA,UAAW,MACPI,KAAKD,aAWbE,eAAeC,WAAYC,OAAQC,aACzBL,WAAaC,KAAKD,kBACjB,cAAU,CAAC,CACdG,WAAAA,WACAG,KAAM,CACFF,OAAAA,OACAC,MAAAA,MACAL,WAAAA,eAEJ"}