Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-71134

Create editor, mutations AMD modules to suport the new course editor

    XMLWordPrintable

Details

    • Moppies Kanban, Moppies Kanban, Moppies Kanban

    Description

      Create the main AMD modules structure to support the new course editor for Moodle 4.0. The new architecture will be the base for implementing the new course editor, allowing teachers to edit the course from both course index or course content. It will consist of two main AMD modules:

      • core_course/courseeditor: the main reactive object the rest of the editor components will interact with
      • core_course/local/courseeditor/mutations: the main class to interact with the backend course edit Webservices

      However, those 2 modules will extend some new generic libraries to built basic reactive interfaces:

      • core/reactive: a wrapper any plugin can import to create both state instances and UI components.
      • core/local/reactive/reactive: the generic class to register single state reactive applications in vanilla JS
      • core/local/reactive/statemanager: a basic state manager to track changes in the data structures
      • core/local/reactive/basecomponent: a component class any UI component can extend to create new reactive components.

      Those new libraries will be incorporated into the core and could be used by any plugin.

      Those new components are based on the proof of concept developed here: https://github.com/ferranrecio/moodle/tree/coursecreatetest02

      Once finished, we could start implementing the new editor components that will replace the existing YUI and AMD modules used to edit the course.

      The following diagram summarizes the main editor elements and workflows:

       

      Attachments

        Issue Links

          Activity

            People

              tusefomal Ferran Recio
              tusefomal Ferran Recio
              Amaia Anabitarte Amaia Anabitarte
              Andrew Lyons Andrew Lyons
              Anna Carissa Sadia Anna Carissa Sadia
              Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Laurent David, Raquel Ortega, Sara Arjona (@sarjona), Andrew Lyons, Huong Nguyen, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze, Stevani Andolo
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                19/Apr/22

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 3 weeks, 1 hour
                  3w 1h